首页 > 其他分享 >Git操作常用命令

Git操作常用命令

时间:2022-10-21 22:13:12浏览次数:56  
标签:git commit stash Git dev 本地 常用命令 操作 分支

 

 

一、创建与合并分支 

1、 从master分支创建dev分支并切换到dev分支

  1. git checkout master

  2. git checkout -b dev

其中,git checkout -b dev 等价于:

  1. git branch dev

  2. git checkout dev

(1)

  1. git branch

查看本地当前的分支,分支前面带“*”表示当前分支,剩下的分支表示本地有的分支。

(2)

  1. git branch -a

查看远程全部的分支,白色的表示本地有的,红色的表示本地没有,仅在远程存在。

2、修改代码、提交代码(当前的操作是在dev分支上进行)

  1. git add a.html

  2.  可运行 git status 查看状态

  3. git commit -m "提交文件a.html"

3、分支合并(将dev合并到master)    先切换到主分支 然后在选择要合并的分支

  1. git checkout master

  2.  

  3. git merge dev

4、合并完成后,删除dev分支.(删除dev分支时,注意我们当前所在的分支不能是dev分支)

  1. git branch -d dev

5、删除后,查看分支(此时看不到dev分支了)

  1. git branch

6、总结 :工作中经常从master创建新的分支,具体操作如下:

  1. master创建新分支:

  2.  

  3. git checkout master

  4.  

  5. git checkout -b issues1234 // 从master分支创建issues1234分支

  6.  

  7. git push origin issues1234

  8.  

  9. git add ..

  10.  

  11. git commit -m "***"

  12.  

  13. git push origin issues1234

注意:将本地分支branch1推到远端的branch2操作步骤:

  1. git push origin branch1:branch2

7、删除分支:

  1. git branch -D issues1234 // 本地强制删除分支issues1234

  2.  

  3. git push origin :issues1234 // 推到远程


 二、解决冲突 

1、发生冲突的文件

  1. <<<<<<< HEAD

  2. Creating a new branch is quick & simple.

  3. =======

  4. Creating a new branch is quick AND simple.

  5. >>>>>>> feature1

其中,git使用 <<<<<<<,=======,>>>>>>>标记文件中自己和别人产生冲突的部分。

<<<<<<<,=======之间为自己的代码;=======,>>>>>>>之间为别人的代码。

如果保留自己的代码,将别人的代码删掉即可。

2、冲突解决后提交

  1. git status

  2.  

  3. git add ***

  4.  

  5. git commit -m "fix conflict"

  6.  

  7. git push origin 分支名


 三、Bug分支 

1、储藏更改:将当前更改的代码储藏起来,等以后恢复使用

  1. git stash

2、恢复储藏的代码

  1. git stash pop // 恢复的同时把stash内容删掉

或者

 

 

  1. // 通过 git stash list,查看本地所有的stash,如果我要恢复第一个就执行:

  2. git stash apply stash@{0}

  3.  

  4. git stash apply // 恢复stash,但是stash内容并不删除

  5.  

  6. git stash drop // 在上面操作的基础上,以此来删除stash

  7.  

  8. 注: git stash list // 查看全部的stash列表

3、将stash空间清空

  1. git stash clear

4、git stash pop 和 git stash apply 区别

  1. 原来git stash pop stash@{id}命令会在执行后将对应的stash id 从stash list里删除,

  2. 而 git stash apply stash@{id} 命令则会继续保存stash id。


 四、版本回退 

1、回退至上一个版本

  1. git reset --hard HEAD

2、回退至指定版本

  1. git reset --hard 版本号

3、查看以往版本号(本地的commit)

  1. git reflog

4、查看各版本号及信息(所有的commit:本地commit + 其他同事的commit)

  1. git log


 五、撤销修改 

1、撤销修改

  1. git checkout -- a.html

分两种情况分析:

  1. ①: 还没有执行 git add 操作,执行上面的操作后,会恢复到和版本库中一模一样的版本状态。

  2.  

  3. ②: 执行了git add ,还没执行 git commit ,再执行上面的操作后,会恢复到git add 结束后的状态

注:一旦执行了git commit -m "*",就不能再使用上面的命令回退。

2、撤销新建文件

比如新建一个aa.html页面,并未执行git add ,即没有被git追踪,此时如果你想撤销新建动作,可执行:

  1. git clean -f ../aa.html

3、撤销新建文件夹

比如新建一个文件夹"demo",并未执行git add ,即没有被git追踪,此时如果你想撤销新建动作,可执行:

  1. git clean -df ./demo


 六、对已push版本进行回退 

1、第一步:

  1. git reset --hard 版本号 // 本地回退到指定的版本

2、第二步:

  1. git push -f origin dev //将远程的也回退到指定版本


 七、本地同步远程删除的分支 

  1. git fetch origin -p // 用来清除已经没有远程信息的分支,这样git branch -a 就不会拉取远程已经删除的分支了


 八、删掉未与远程分支对应的本地分支 

从gitlab上看不到的分支在本地可以通过git branch -a 查到,删掉没有与远程分支对应的本地分支:

  1. git fetch -p


 九、查看远程库与本地分支的信息 

  1. git remote show origin


 十、标签管理 

1、给当前分支最新commit打标签

  1. git tag v1.0.0

2、比如现在周五,要给周一某个commit打标签,应执行以下步骤:

(1)、查看log日志,找到相应的commit版本号

  1. git log --pretty=oneline --abbrev-commit

  1. // 显示如下commit,比如我想在 "34372b05"这个commit打标签

  2. 44d2e20b fix bug

  3. 34372b05 fix bug

  4. 29554931 fix bug

(2)、给指定的commit打标签

  1. git tag v1.0.0 34372b05

(3)、创建的标签只存在本地,推至远程

  1. git push origin v1.0.0

(4)、一次性推送未推至远程的本地标签

  1. git push origin --tags

(5)、查询所有标签

  1. git tag

(6)、查询标签详细信息

  1. git show v1.0.0

(7)、删除本地标签

  1. git tag -d v1.0.0

(8)、删除远程标签

  1. // 先从本地删除

  2. git tag -d v1.0.0

  3.  

  4. // 然后从远程删除

  5. git push origin :refs/tags/v1.0.0

  6.  

  7. // 最后可以在gitlab上查看是否真正的删除了标签

3、创建带有说明的标签,用-a指定标签名,-m指定说明文字

  1. // git tag -a 版本号 -m 说明信息 commit版本号

  2. git tag -a v1.0.0 -m "version 1.0.0 released" 34372b05(commit版本号)

  3.  

  4. // 查看标签详细信息

  5. git show v1.0.0

标签:git,commit,stash,Git,dev,本地,常用命令,操作,分支
From: https://www.cnblogs.com/zy-feng/p/16814935.html

相关文章

  • 3.ClickHouse系列之SQL操作
    首先我们建表,表引擎我们后续文章在详细介绍,我们首先了解下基本SQL语法CREATEDATABASEstudy;CREATETABLEstudy.customer(idUInt8,cityString,name......
  • Docker基础:Docker 常用命令梳理
    ​今天给大家梳理一下Docker常用的命令,希望对大家有所帮助1、Docker环境信息命令dockerversion说明:用于显示docker的版本信息,包括docker客户端和docker服务端基本信......
  • 【Oracle数据库】Oracle SQL*Plus环境下的简单操作
     OracleSQL*Plus环境与查询 (1)登录到Oracle   (2)helpindex查看Oracle有关命令   (3)创建登录表  (4)插入数据  (5)查询所有数据   (6)设置列的显示格式     ......
  • 详解 RestTemplate 操作
    详解RestTemplate操作作为开发人员,我们经常关注于构建伟大的软件来解决业务问题。数据只是软件完成工作时要处理的原材料。但是如果你问一下业务人员,数据和软件谁更重要......
  • git提交代码
    设置自己Git的信息gitconfig--globaluser.name"yourname"gitconfig--globaluser.email"[email protected]"创建本地版本库在项目文件夹鼠标......
  • 原生java 操作 neo4J
    使用原生的这种方式导入坐标<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-neo4j</ar......
  • 使用MySQL Proxy实现读写分离的正确操作
    环境:CentOS7本文适用于包括Docker的所有环境,Docker安装这里不在阐述。第一步从官网下载tar包。官网链接:https://downloads.mysql.com/archives/proxy/a)直接在CentOS上......
  • shell命令操作(jenkins执行后判断shell执行的对与错)
    字符截取https://blog.csdn.net/JineD/article/details/124196546 条件判断http://www.caotama.com/1903002.htmlstrA=$(curl--location--requestPOST'https://b......
  • Neo4j操作
    http://localhost:7474/browser/ 数据库名用户名密码neo4j neo4j 123456首先,我们删除数据库中以往的图,确保一个空白的环境进行操作:MATCH(n)DETACHDELETEn......
  • VisualStudio 常用快捷键操作
    项目相关的快捷键Ctrl+Shift+B=生成项目Shift+Alt+C=添加新类Shift+Alt+A=添加已有项目到项目编辑相关的键盘快捷键Ctrl+Enter=......