git的使用

管理工作目录
	-- mkdir xxx
	-- cd xxxx
	-- git init   (.git)
	-- git status  查看工作树状态
	-- git log   查看提交记录
	-- git reflog   查看之前所有的操作记录
Git 三个状态切换
	工作区   暂存区  本地仓库
	-- git add ./<filename>  工作区到暂存区
	-- git commit -m ""   暂存区到本地仓库
	-- git checkout ./<filename>  丢弃工作区的内容
	-- git reset ./<filename>  从暂存区退到工作区
	-- git reset --hard/--soft <commit_id>  版本的回退  
			-- hard 丢弃内容
			-- soft 把内容放入暂存区
分支管理
	-- git branch <name>  创建分支
	-- git branch 查看分支
	-- git branch -d <name> 删除分支
	-- git checkout <name>  切换分支
	-- git merge <name>  讲name分支合并到当前分支
		-- 冲突只能手动解决
		-- 解决完冲突记得要提交

标签管理
	-- git tag <name> <commit_id> 给指定的版本加标签
	-- git tag  查看标签
	-- git tag -d <name> 删除标签
远程仓库建立连接
	-- SSH 
	  -- 1 本地生成公钥私钥
	  	  在主用户的根目录下
	  -- 2 把公钥放入GitHub中
	-- 建立连接
		git remote add "远程仓库的别名" "远程仓库的地址https/ssh"
	-- 查看所有的远程仓库
		git remote
	-- 向远程仓库提交代码 
		git push -u 远程仓库别名 本地分支名:远程分支名(如果忽略远程分支名,将会把本地分支名中的文件传到远程分支中与本地分支同名的分支,没有则新建分支)
		注意 -u 第一次提交代码的时候本地分支跟远程仓库的分支建立起连接
	-- 从远程仓库拉代码
		git pull 远程仓库别名 分支名
	-- 远程仓库的代码跟你最后push的代码有变化的时候 push会失败
		-- 先从远程仓库拉取代码
		-- 手动解决冲突
		-- 提交到本地仓库
		-- git push ....
流程
	-- 拉取自己分支的代码
	-- 提交到测试分支
	-- 提交到远程仓库自己的分支
	-- 提交合并请求
	-- 由领导把你的分支合并到master
	-- 提交到保险分支
	-- 提交线上分支
当线上出bug
	-- 在master分支建立bug分支
	-- 在线上分支版本回退 
	-- 在bug分支 解决bug
rebase  合并提交记录 保持记录的整洁性
克隆项目
	-- git clone 地址
	
	

获取ssh公钥
ssh-keygen -t rsa -C "youremail@example.com"   #邮箱是注册github的邮箱
	把生成的公钥放入GitHub账号的sshkey列表里

  

原文地址:https://www.cnblogs.com/perfey/p/10021931.html