git 使用

1. 拉代码

git pull origin branch_name

git pull --rebase origin branch_name 解决本地有提交时产生冲突,merge出一个新提交的问题。

2.提交代码

git push origin branch_name

如果改了些内容,想重新推代码:

        git add ...

        git commit --amend

        git push origin branch_name -f

3.删除上个提交

1.先用 git log 查出历史提交记录,找到需要删除的那条记录的上一个的commit-id

2.使用git reset commit-id把提交记录回滚到上一次提交(不建议用git revert,因为用它不但不会删除你想删除的那条记录,还会有一条新的提交记录用来重置你的上次的修改)

git reset 1ed361d6bf331cb3e9fc695888d7ae76ae9dce59

3.再用git log 确认是否删除错误的提交记录

4.用git status发现代码变成未提交状态,重新add并commit正确的代码修改

5.不要pull远程代码(防止第2步白做),直接用git push --force origin 分支名,强制push到远程分支

(

如果是git revert

        1.  git revert HEAD

        2. git push origin branchname

)

4. 撤销文件的修改(还未git add)

        git checkout filename

5. 撤销已通过 git add 命令进入暂存区的文件(已经git add)

        git reset HEAD <filename>

6. cherry-pick 其他地方的提交

        1. git cherry-pick commit_id

                如果遇到冲突:解决冲突,然后把文件加到暂存区(git add .)

                git cherry-pick --continue (解决冲突后执行,完成cherry-pick)

                (放弃cherry-pick  git cherry-pick --abort   冲突后放弃合并,回到操作前的样子)

              (退出cherry-pick git cherry-pick --quit 发生冲突退出cherry pick, 不回到操作前的样子)

                

7. 代码暂存

        git stash       暂存未提交的修改  git stash --include-untracked (新加的文件也进行暂存)

                             可以给stash命名: git stash save "message"

        git stash list  暂存的所有stash

        git stash pop 恢复最上面的stash  , 恢复某个,可使用  git stash pop stash@{num}

        git stash apply  将堆栈中的内容恢复到当前分支下。这个命令不同于 git stash pop。该命令不会将内容从对堆栈中删除,也就是该命令能够将堆栈的内容多次运用到工作目录,适合用与多个分支的场景 git stash apply stash@{$num}

        git stash drop  从堆栈中移除指定的stash 使用方法:git stash drop stash@{$num}

        git stash show 查看堆栈中最新保存的stash和当前⽬录的差异,显⽰做了哪些改动,默认show第一个存储   事例:git stash show -p stash@{3}

8. 把主分支的提交转移到当前分支

        git checkout feature

        git rebase master

构造两个分支master和feature,其中feature是在提交点B处从master上拉出的分支

master上有一个新提交M,feature上有两个新提交C和D

在这里插入图片描述

 此时我们切换到feature分支上,执行rebase命令,相当于是想要把master分支合并到feature分支(这一步的场景就可以类比为我们在自己的分支feature上开发了一段时间了,准备从主干master上拉一下最新改动。模拟了git pull --rebase的情形)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

NineDays66

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值