【git 使用小记】

git 使用小记

1. git reset

在使用git提交的时候可能会出现很多种问题,比如希望add的文件多了或少了,或者commit信息出现了问题,这个时候我们希望进行一个回退上一版本的操作,就需要用到git reset指令。

(1)撤销已经commit但还没push的

git reset --mixed HEAD^ / [具体版本号]
git reset --soft HEAD^ / [具体版本号]
git reset --hard HEAD^ / [具体版本号]

HEAD^:表示上一个版本,即上一次的commit,也可以写成HEAD~1 如果进行两次的commit,想要都撤回,可以使用HEAD~2
–mixed不删除工作空间的改动代码 ,撤销commit,撤销 git add file
–soft不删除工作空间的改动代码 ,撤销commit,不撤销 git add file
–hard删除工作空间的改动代码,撤销commit,撤销 add file

(2)撤销已经push的commit

git log查看需要回退到的版本号,或者确定撤销n次,使用HEAD~n的方式;
PS:推荐使用git log --pretty=oneline,更加简洁直观
② 使用git reset进行本地版本回退,使用--hard将所有改变全部撤销;
PS:这里--mixed--soft应该更好,强制回退本地和远程版本号,但是本地改动的代码不变,可以在这个基础上继续修改
git log查看本地是否回退成功;
git push origin master --force强制提交当前版本号;
PS: 如果master分支是protected的话是不支持强制提交的,可以修改后进行新的提交

2. git commit --amend

在git commit的时候出现提交信息写错的情况,就可以使用git commit --amend指令来修改,注意修改前后的信息都会记录在git reflog中,git log中就没有修改前的记录了。
有两种用法:

(1)

git commit --amend -m "这是修改之后的备注"

(2)

git commit --amend

进入vim编辑页面,第一行就是message信息,进行修改后保存即可。

3. git remote

有一种特殊的情况,你之前git clone的时候用的url是A,然后可能后面公司gitlab的域名修改了,这个时候本地仓库并不会自动同步更新。

git remote -v #查看所有远程仓库信息
git remote set-url [你的远程连接名] [你的远程仓库新地址] # 例如git remote set-url origin [email protected]

猜你喜欢

转载自blog.csdn.net/MarsherS/article/details/125663807