git 如何清理操作日志_git-常用操作记录

前言

内容

1.git fetch

1.1 git fetch origin

$ git fetch

上面命令将某个远程主机的更新,全部取回本地;

git fetch命令通常用来查看其他人的进程,因为它取回的代码对你本地的开发代码没有影响;

1.2 git fetch

$ git fetch

上面命令取回特定分支的更新;

例如:取回origin主机的master分支,如下:

$ git fetch origin master

取回的更新,在本地主机上要用"远程主机名/分支名"的形式读取。比如origin主机的master,就要用origin/master读取;

1.3 直接使用 git fetch 命令

git fetch

创建并更新本地远程分支。即创建并更新origin/xxx 分支,拉取代码到origin/xxx分支上;

在FETCH_HEAD中设定当前分支-origin/当前分支对应,如直接到时候git merge就可以将origin/abc合并到abc分支上;

git fetch origin

手动指定了要fetch的remote。在不指定分支时通常默认为master;

git fetch origin dev

指定远程remote和FETCH_HEAD,并且只拉取该分支的提交;

1.4 对比git pull

与git pull相比git fetch相当于是从远程获取最新版本到本地,但不会自动merge。如果需要有选择的合并git fetch是更好的选择。效果相同时git pull将更为快捷;

2.git checkout

git checkout 命令用于切换分支或恢复工作树文件

2.1 恢复工作树

有时候我们写的代码写错分支了,我们想要恢复到上一次版本,使用:

git checkout --.

2.2 本地切换到指定分支

查看分支,并切换到本地分支:feature/A

2.3 关联本地分支

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

通过git branch可以看到本地多了一个develop分支

2.4 从某一个commit开始创建本地分支

1、git log 查看提交

2、// 通过checkout 跟上commitId 即可创建制定commit之前的本地分支

git checkout commitId -b 本地新branchName

上传到远程服务器

// 依然通过push 跟上你希望的远程新分支名字即可

git push origin HEAD:远程新branchName

3.git branch

3.1 查看本地分支

$ git branch

3.2 删除本地分支与远程分支同步

远程删除分支:我们删除gitlab上的分支feature/A,之前我们同步到本地的分支feature/A也需要删除。

本地查看分支并同步删除分支

提示你可以通过git remote prune 移除这个分支。(也就是说你可以刷新本地仓库与远程仓库的保持这些改动的同步)

查看远程分支

$ git branch -r

4.git stash

4.1 分支暂存和恢复

stash命令可用于临时保存和回复修改,可跨分支。

git stash暂存分支:一般如下配置使用

1.先暂存分支

git stash

2.分支切回来后,查看下暂存区

git stash list

3.把之前暂存内容应用回来

git stash apply

4.2 实例

1.分支暂存

2.分支恢复

5.git reset

5.1 方式1

通过使用Git版本恢复命令reset,可以回退版本。reset命令有3种方式:

git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息

git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容

以下是一些reset的示例:

1 git reset HEAD^  #回退所有内容到上一个版本

2 git reset HEAD^  a.py #回退a.py这个文件的版本到上一个版本

3 git reset –soft  HEAD~3 #向前回退到第3个版本

4 git reset –hard  origin/master #将本地的状态回退到和远程的一样

5 git reset 057d  #回退到某个版本

6 git revert HEAD #回退到上一次提交的状态,按照某一次的commit完全反向的进行一次commit

5.1 方式2

在当前branch上多次commit代码并且push后,发现不符合要求,需要回滚到特定的版本。步骤如下:

1、查找commitId

首先用命令行打开git项目路径,输入git log命令查看commit记录,如下:

git log

找到commitId是9a0d02d1578ea064479296ad7efa70c5cb1a3717记录,这是执行上面命令后打印出来的信息:

2、找到需要回滚的commit,输入git reset --hard {commitId},将本地文件回滚:

git reset --hard c503cffa099332911d4fce2fc1399cb4bc3ba9d6

3、此时本地文件已经回滚到刚刚commit 9a0d02d1578ea064479296ad7efa70c5cb1a3717之后的状态,但是服务器仍然没有改变,需要继续远程回滚:

git push -f

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值