常用的git命令

1、本来本地存在分支,将远程git仓库里的指定分支拉取到本地

git checkout -b 本地分支名 origin/远程分支名

2、直接克隆指定分支

git clone -b <branch name> [remote repository address]

git pull <远程主机号> <远程分支>:<本地分支>

git push <远程主机名> <本地分支名>:<远程分支名>

3、删除远程分支

git push origin :old_local_branch_name

 

 

1、Git重命名近端+远端

#1 将本地分支进行改名

git branch -m old_branch new_branch

 

#2 将远程分支的老分支删除

git push origin :old_branch

 

#3 将改名后的分支push到远程

git push origin new_branch

 

2、保存本地修改

可以先执行git stash 将本地修改保存起来。

然后 git pull

然后应用stash。 执行 git stash apply 0。

原理

git stash 命令是储藏命令。

1. 可以用来储藏工作的中间状态,

2. 也可以将储藏好的中间状态应用到现有的工作中。

主要的命令有

1. git stash

当本地有修改的时候,只要运行git stash 就可以将本地的更改储藏起来。

2. git stash list

可以用来查看储藏起来的状态。如下

stash@{0}: WIP on master: ece766d package struct

3. git stash apply

可以用来应用储藏的状态。比如 git stash apply 0 就会应用储藏id为0 的中间状态。

 

 

3、Git撤销操作

1.第一种情况:还没有push,只是在本地commit

执行命令git reset --soft <commit>

--mixed    会保留源码,只是将git commit和index 信息回退到了某个版本.

--soft   保留源码,只回退到commit信息到某个版本.不涉及index的回退,如果还需要提交,直接commit即可.

--hard    源码也会回退到某个版本,commit和index 都会回退到某个版本.(注意,这种方式是改变本地代码仓库源码)

 

 

执行hard之后撤销

git fsck --lost-found

通过运行 git show [commit_hash] 查看提交之后的改变

运行git merge [commit_hash] 来恢复到之前的提交。

 

2.commit push 代码已经更新到远程仓库


对于已经把代码push到线上仓库,你回退本地代码其实也想同时回退线上代码,回滚到某个指定的版本,线上,线下代码保持一致.你要用到下面的命令

git revert <commit_id>

revert 之后你的本地代码会回滚到指定的历史版本,这时你再 git push 既可以把线上的代码更新。

 

 

注意:git revert是用一次新的commit来回滚之前的commit,git reset是直接删除指定的commit,看似达到的效果是一样的,其实完全不同。

第一:上面我们说的如果你已经push到线上代码库, reset 删除指定commit以后,你git push可能导致一大堆冲突.但是revert 并不会.

第二:如果在日后现有分支和历史分支需要合并的时候,reset 恢复部分的代码依然会出现在历史分支里.但是revert 方向提交的commit 并不会出现在历史分支里.

第三:reset 是在正常的commit历史中,删除了指定的commit,这时 HEAD 是向后移动了,而 revert 是在正常的commit历史中再commit一次,只不过是反向提交,他的 HEAD 是一直向前的.

 

4、git修改注释

https://www.jianshu.com/p/098d85a58bf1

如果你只想修改最后一次注释(就是最新的一次提交),那好办:

git commit --amend

出现有注释的界面(你的注释应该显示在第一行), 输入i进入修改模式,修改好注释后,按Esc键 退出编辑模式,输入:wq保存并退出。ok,修改完成。

已经将代码push到远程仓库

首先,你把最新的版本从远程仓库先pull下来,修改的方法都如上,最后修改完成后,强制push到远程仓库:

git push --force origin master

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值