Git常用命令和工作实战

git语法


  • git clean 删除当前未跟踪的文件
  • git log 查看日志
  • git commit 提交本地修改更新的代码快照
  • git branch (branchname) 新建分支
  • git branch 查看现有分支
  • git checkout (branchname) 切换分支,实际上是切换到当前head所指的commit
  • git merge (branchname) ,合并(branchname) 到当前分支
  • git rebase other_feature 也是合并分支,会将 other_feature 分支下的提交合并到当前分分支,但是会将当前分支的基分支改变,改变成 other_feature,使 git tree更简洁
  • git rebase ,顾名思义,会改变基分支,虽然看起来更简洁,但是改变基分支之后,就无法查到之前是基于哪个分支开始开发的,所以git merge更常用

HEAD


指向当前分支的指针

  • git checkout (ref) head切换到到ref所指commit中
  • HEAD^ 当前head所指commit的前一个,HEAD~3当前commit所指的前3个commit
  • git branch -f main HEAD^ 切换分支main所指向的commit为HEAD^
  • git reset HEAD^ 放弃当前head所指commit,回退代码到上一个commit,这个是针对本地的仓库//当对一个方法修改错误后提交了,可以使用这个进行回退
  • git revert head 放弃当前head所指commit,回退代码到上一个commit,针对远程仓库的,使同事也看到回退的代码
  • git stash 隐藏当前修改,转移到另一个分支上

more


  • git cherry-pick c3 c4 将提交的c3、c4commit,转移到当前分支上,不限分支
  • git rebase -i (branchmame) 执行这个命令后,可以对(branchname)到当前分支中提交的commit进行删选

开发实战


  • 想要回退代码到 push之前的commit,后面的都不要了:
git reset --hard target-commit
git push -f origin target_feature
  • 某几个分支不需要,用git revert,上线前比较紧急时,直接到公司的GitLab上修改
  • 公司上线后,现有代码出错,想回退到之前正确的提交,但是想保存提交历史,且不一个个的revert,用reset
   git checkout orgin master
   git pull orgin master
   git reset --hard correct_feature
   git reset --soft orgin master
   git commit -m "rollback"
   git push orign master

关于已提交的代码回滚,更详细的请到:https://blog.csdn.net/weixin_36691991/article/details/125995535

  • 已经 commitpush 的代码回退
git reset --soft HEAD~1 //撤销提交,但保留修改的内容
git reset --soft HEAD~1 //撤销提交,不保留修改的内容
  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值