git的操作命令以及git操作的几种应用场景

                                **史上最全的GIT常用场景命令都在这里啦!**
                                    ***有未想到的地方欢迎补充***

git的操作命令

git log //查看提交历史记录,从最近到最远,可以看到3次
git log --pretty=oneline //加参,简洁查看
git reflog //查看每一次修改历史
cat test.txt //查看文件内容
git status //查看工作区中文件当前状态
git reset --hard HEAD^(HEAD~100)(commit id) //回退版本
git checkout – test.txt //丢弃工作区的修改,即撤销修改
git reset HEAD test.txt //丢弃暂存区的修改(若已提交,则回退)
git fetch //Git fetch会将数据拉取到本地仓库 - 它并不会自动合并或修改当前的工作。
git pull //git pull是从远程获取最新版本并merge到本地,会自动合并或修改当前的工作。

git操作的几种应用场景

场景1:本地代码修改文件,需要提交MR到远端

git pull origin master
git checkout mybranch_1
git add .
git commit -m " log说明 "
git push --set-upstream origin mybranch_1

场景2:在分支mybrach_1进行工作,同事新建了一个分支test_1,需要你共同协作

①不想把本地提交commit
git stash
②想提交commit
git add .
git commit -m " "

git fetch origin test_1
git checkout test_1
帮助完,需要回到你自己的工作
git checkout mybranch_1
git stash pop

场景3:在分支mybranch_1进行工作,需要对部分文件进行修改,但此时你得知同事在他的分支test_1已经完成了这一些修改,但还未上库,并提交至节点commit_1(id:9999),你需要他的修改的git操作命令

git checkout -b mybranch_1
git cherry-pick 9999
(命令解读:用于从一个仓库的某个提交中提取出一个或多个文件,并将这些文件添加到另一个仓库中。9999是一个提交的ID,表示要从这个提交中提取出文件)

场景4:你在mybranch_1进行工作,修改了文件file_a,file_b,file_c,包含了3个节点(commit_1/commit_2/commit_3),并提交了MR,一段时间后,同事也修改file_b/file_c,并且上库,修改产生重合,MR遇到冲突,需要解决

git reset --soft HEAD~3
git commit -m " combine commit "
git pull origin master --rebase

场景5:在mybranch_1进行工作,修改了5个文件,并已提交节点commit_1(id:8888),此时你认为不需要file_a的修改只保留其余4个文件的修改,假设mybranch_1基于节点6666

git checkout 6666 file_a
git reset
git checkout –
git commit -m " changes without file_a "
合并节点
git push --force

场景6:在mybranch_1进行工作,做了一些修改,提交一次commit–commit_1,但是没有推送到远端,此时因为一些不明原因,你将节点回退到commit_1之前,并且强推到远端,此时git log已看不到commit_1,你的修改是否丢失了?

git reflog
git reset --hard(commit-id)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值