一、创建/查看分支
1.查看分支
(1) 查看本地分支
git branch
(2)查看所有分支
git branch -a
Tips:带*的为当前分支
2.新建/切换分支
新建并切换分支
git checkout -b develop
git checkout -b dev 等价于:
git branch develop
git checkout develop
3.删除分支
(1)删除本地分支
git branch -d develop
Tips:如果develop是从test分支创建出去,而此时在master分支上删除,要用git branch -D develop强制删除
(2)删除远程分支
git push origin -d develop
4.合并分支
在develop修改代码后
git checkout master //先切换到主分支
git merge develop //合并
二、提交修改
1.查看当前分支状态
git status
2.将文件从工作区添加至暂存区
git add *
Tips:如果新增文件或删除文件要用git add --all
3.提交到本地仓库
git commit -m "add project"
Tips:引号内为注释,方便以后管理
4.从本地仓库推送至远程仓库
git push origin master
如果远程仓库还没有develop分支,使用git push origin develop:develop,将本地develop分支推送至远程仓库
三、回退版本
1.查看版本号(本地的commit)
git reflog
2.查看各版本号及信息(所有的commit:本地commit + 其他同事的commit)
git log
3.回退上一个版本
git reset --hard HEAD
4.回退指定版本号
git reset --hard e726066
四、撤销修改
正常情况下,我们的工作流就是3个步骤,对应上图中的3个箭头线:
git add *把所有文件放入暂存区;
git commit把所有文件从暂存区提交进本地仓库;
git push把所有文件从本地仓库推送进远程仓库。
(1)已修改,未暂存
git checkout *
或者
git reset --hard
Tips:git add * 与git checkout * 是一对相反的动作,add是前进,checkout是后退
(2)已暂存,未提交
如果已经进行了git add *操作
git reset
git checkout *
git reset只是把修改退回到了git add *之前的状态,也就是说文件本身还处于已修改未暂存状态,你如果想退回未修改状态,还需要执行git checkout *
或者
git reset --hard
(3)已提交,未推送
如果你既添加了暂存区,又提交到了本地仓库
git reset --hard origin/develop
还是这个git reset --hard命令,只不过这次多了一个参数origin/develop,正如我们上面讲过的,origin/develop代表远程仓库,既然你已经污染了你的本地仓库,那么就从远程仓库把代码取回来吧。
(4)已推送
假设你又不小心提交到了远程仓库
git reset --hard HEAD^
git push origin develop
这只能先恢复本地仓库,再推送至远程仓库
网友评论