使用流程
场景1
Alice需要将自己的代码上传到代码库中
#查看自己变更了那些文件
git status
#将对应文件增加,xxx代表上一步中modufied:后面的文件
git add xxx
#如果要将所有的改变的文件同时增加
git add .
#进行commit, xxx代表你对本次提交的备注
git commit -m "xxx"
#进行push,合入到master分支里面
git push origin HEAD:refs/for/master
场景2
Alice改变文件后,但没有进行add操作,现在想要撤销更改
git status
git checkout -- test.txt
场景3
soft和hard的区别,Alice看完这篇文章:get reset三种模式,她又懂了!
alice
commit
的时候发现备注写错了,想要回到上一步怎么办?
git reset --soft HEAD^
alice
push
后发现提交错了,想把本地的代码库回退到上一个版本怎么办?
git reset --hard HEAD^
场景4
Alice准备开发代码,mentor建议不要在master分支进行开发,需要拉分支
注意代码库是 基于主干开发(基于分支开发不同)见下文
git checkout -b AliceBranch origin/master
git pull
#对代码进行修改,提交和正常提交流程相同
git add .
git commit -m ""
git push origin HEAD:refs/for/master
场景5
Alice 要开发
基于分支开发
的代码库了,她也需要拉分支
# 1、手动在代码平台上建立分支AliceBranch
# 2
git pull
git checkout -b AliceBranch origin/master
#对代码进行修改,提交和正常提交流程相同
git add .
git commit -m ""
# 和主干分支还要一个重要区别在这
git push origin HEAD:refs/for/AliceBranch
场景6
Alice想要删除分支
# 删除一个不是当前打开的分支
git branch -d <branch_name>
# 删除一个当前打开的分支
git branch -D <branch_name>
# 恢复删除的分支
git branch <branch_name> <hash_val>
# 但Alice不知道hash_val是多少,所以需要reflog命令
git reflog
场景7
系统提示Alice
rebase
,她看到这篇文章,她又懂了
场景8
拉取主干代码时提示冲突,如果不想解决这些冲突,直接拉取最新代码
git fetch --all
git reset --hard origin/master
git pull
场景9
commit或者push代码后,想要修改commit中的备注信息
git commit --amend
#然后i进入编辑模式,修改第一行的备注信息即可