查看远程分支
本地分支使用git branch,远程分支加上-a
$ git branch -a * master remotes/origin/HEAD -> origin/master remotes/origin/master |
查看远程log
先使用git branch -a查看分支名称,再执行git log <分支名称>
追加提交
如果执行git commit后还想提交一些忘记的修改,又不想更改commit id:
先添加修改的文件:git add xxx
再执行:git commit --amend
此时会自动打开vi修改提交记录,修改后执行“:wq”,即可。
git reset, git revert, git checkout及版本回退再回到最新
使用git log可以看到每个版本的提交id:
commit e708aefbbdfcd97e4c0796d880b3da8c2c13aaeb
...
commit 7f63967c15871b88f685de62004f49d00e5dd705
...
若想要回到历史版本,如7f6396,使用命令:
git reset --hard 7f6396
此时使用命令git log仅看到如下内容:
commit 7f63967c15871b88f685de62004f49d00e5dd705
...
此时又想恢复到最新版本该如何处理呢?
若工作的计算机已和远程git服务器有联网,可以执行git pull更新;
若未和远程git服务器联网,先执行git reflog:
7f63967 HEAD@{0}: reset: moving to 7f6396
e708aef HEAD@{1}: xxxxxxxxxxxxxxxxxxxx
这里记录了最近的操作,第一列即为操作时的commit id。
e708aef即为最新版本的id,更新到最新版本即执行:git reset --hard e708aef
-----------------
想回到历史版本的另一种方法是执行:git checkout 7f6396,恢复最新时再执行git checkout master
git reset 加--hard时恢复commit log并恢复工作区的文件,不加--hard即--soft时仅恢复commit log不恢复工作区文件。
git revert <commit id>仅丢弃<commit id>的修改内容。