git命令手记

查看远程分支

本地分支使用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 仅丢弃的修改内容。

 

你可能感兴趣的:([技术-杂])