linux操作 —— git

1.全部重置工作区的内容(未commit之前)

git reset --hard

2. 回退一个commit

git reset --soft   HEAD~1        // 保留commit的修改

git reset --hard HEAD~1       // 取消commit的修改

git revert HEAD~1             // 是撤消该commit,会生成一个新的commit revert记录。

git reset --mixed e7ea38343f196093c08a18b703d666d1d983f1be    //回退一个提交,不修改文件

3.强制更新

方法一:

git fetch --all  
git reset --hard origin/branchxx
git pull

方法二:

git add .
git reset --hard            // 清空commit之前所有的工作目录
git pull origin  branchxx   // 更新 

4.创建并切换分支

 git checkout xxxbranch -b mybranch

5.取远程分支并分化到本地一个新分支

 git checkout -b mybranch origin/xxx

6.快速提交一个comit到其他远程分支

git fetch --all
git pull origin xxxbranch
git cherry-pick commitidA
git push szhuaqin HEAD:xxxBranch

7.删除 一些 没有 Git add 的 文件

git clean 参数

-n 显示 将要 删除的 文件 和  目录

 -f 删除 文件,-df 删除 文件 和 目录
git clean -n

git clean -df

git clean -f

8.从分支的提交记录上抽取patch

git log
git format-patch HEAD~n   //n表示需要抽取几个patch

9. push

git push origin HEAD:refs/for/

10.查看一个文件的修改记录

git blame xxx

11.合并commit提交

git rebase -i HEAD~3  可以修改历史提交,数字3可以自己设置,代表最近3笔提交。
      执行后会出现:

    pick:*******
    pick:*******
    pick:*******
     把需要修改的comit前面的pick 改成 edit或e,然后保存退出。
     这时通过git log你可以发现,git的最后一次提交已经变成你选的那个了,这时再使用:
     git commit --amend  来修改commit信息.
     然后 git rebase --continue .
    如果前面选择了多个commit要修改,这里就会跳到下一个commit,然后依照上面修改然后提交,再continue.
    另外 git rebase -i 还可以合并commit,在前面pick那个界面把要合并的commit 前面改成三squash或s.

12.repo 操作所有分支

repo forall -c git git reset --hard

13.回退 Git add 修改(绿色变红色)

git reset HEAD
stackoverflow 高票答案
git rm --cached <added_file_to_undo>

如需撤销文件夹加上-r
git rm -r --cached <added_file_to_undo>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值