Git基本命令(四)

70 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第6天,点击查看活动详情

仓库信息

git log: Git - 查看提交历史

git remote -v: 查看远程仓库的信息

git remote add pb https://github.com/paulboone/ticgit:加入简写

git remote rename pb paul:将简写重命名

git remote remove pb:移除简写

git reset --hard HEAD~2:回退两个版本

其他

git checkout -b totallyNotMain o/main: 就可以创建一个名为 totallyNotMain 的分支,它跟踪远程分支 o/main

git branch -u o/main foo: 这样 foo 就会跟踪 o/main 了。如果当前就在 foo 分支上, 还可以省略 foo:git branch -u o/main

git mv file_from file_to: 对文件改名

回滚完强制覆写远端仓库记录:git push origin local_branch --force

远程仓库回退方法 (参考: 远程仓库版本回退方法--Git(二))

本地分支版本回退的方法

如果你在本地做了错误提交,那么回退版本的方法很简单 先用下面命令找到要回退的版本的commit id:

git reflog

接着回退版本:

git reset --hard Obfafd

0bfafd就是你要回退的版本的commit id的前面几位

自己的远程分支版本回退的方法

如果你的错误提交已经推送到自己的远程分支了,那么就需要回滚远程分支了。 首先要回退本地分支:

git reflog
git reset --hard Obfafd

紧接着强制推送到远程分支:

git push -f

注意:本地分支回滚后,版本将落后远程分支,必须使用强制推送覆盖远程分支,否则无法推送到远程分支

公共远程分支版本回退的方法

使用git reset回退公共远程分支的版本后,需要其他所有人手动用远程master分支覆盖本地master分支,显然,这不是优雅的回退方法,下面我们使用另个一个命令来回退版本:

git revert HEAD                     //撤销最近一次提交
git revert HEAD~1                   //撤销上上次的提交,注意:数字从0开始
git revert 0ffaacc                  //撤销0ffaacc这次提交

git revert 命令意思是撤销某次提交。它会产生一个新的提交,虽然代码回退了,但是版本依然是向前的,所以,当你用revert回退之后,所有人pull之后,他们的代码也自动的回退了。

Reference:

Pro Git 中文版

git基本操作,一篇文章就够了! - 掘金

常用 Git 命令清单 - 阮一峰的网络日志

Git操作指南 · Hongzheng Chen

Git基本操作命令合集 - 温一壶清酒 - 博客园

git操作:常用版本控制技巧汇总 | Academic

git操作整理 - 朗月清风