首页 > 编程学习 > 项目中用到的git命令(git tag标签全流程)

项目中用到的git命令(git tag标签全流程)

发布时间:2022/11/19 18:36:41

提示:文中出现的 <xx名> 为命名变量,具体按照 xx 区分含义。

提示:文中出现的 or 为或者的意思,表示有多种用法或者写法。

日常必用指令

1、克隆仓库指定分支代码

git clone -b <分支名> https://xxx.com

🌰🙋 克隆 test 分支代码

git clone -b test https://xxx.com

2、提交到暂存区

git add -A

这里多提两个git命令

git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。

git add -u :他仅监控已经被add的文件(即tracked file),他会将被修改的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写)

git add -A :是上面两个功能的合集(git add --all的缩写)

3、将暂存区内容添加到本地仓库中

git commit -m '提交内容文字描述'

🌰🙋 提交 test 分支 首页下用户详情 代码bug修改

git commit -m 'fix 首页 => 用户详情 bug修改'

fix 意思是修理,安装的意思,常用的简写如下(只是建议,不是必须)

"feature", // 新功能 

"fix", // 修复 bug

"docs", // 文档注释

"refactor", // 重构

"revert", // 回退

"build" // 打包
复制代码

4、服务器向本地同步代码

git pull origin <分支名>

🌰🙋 提交 test 分支代码

git pull origin test

5、将本地代码提交到服务器

git push origin <分支名>

🌰🙋 提交 test 分支代码

git push origin test

这里多提一嘴,很多初学者(我)/小公司开发者(我)/夕阳红产业转行工作者(我)都可能在这一步遇到一个小问题: 代码有了冲突,然后控制台显示的页面有点陌生(linux页面),可编辑的部分连文件路径不显示的情况。并且怎么也退不出去,回不去之前控制台,强制关闭又怕代码出现问题。

这种情况其实看一下linux就非常清楚了(但是很多人不知道这是linux页面)。只需要输入 q 字母,然后回车就可以退出linux系统(有时候是 :q 看具体的终端前面有没有自动加冒号)。

基本上面这些已经够80%的日常开发了,所以,项目比较小,分支少,一个人开发的项目就足够用了。接下来,下面可能是一些杂七乱八的git命令了。

git中tag标签相关

1、班门弄斧:tag的作用

tag 是git仓库里面某分支某次commit标记。本质上还是commit的一个别名

🌰🙋 a标签做的的锚点(tag),会跳转到页面(git仓库)某一位置。具体位置由**id(commit)**来界定。

不明白没关系。后面会有 趣味 拉tag标签代码以及打标签操作。

2、tag标签使用

查看 本地 所有tag

git tag or git tag -l

查看 仓库 所有tag

git ls-remote --tags origin

创建 本地 tag

git tag -a <标签名> -m '标签内容文字描述'

创建 仓库 tag

将本地tag推送到仓库,就成了仓库tag

git push origin <标签名>

如果本地tag比较多,一次全部推送

git push origin --tags

进阶用法,为某个commit后的代码打tag标签

适用场景:隔壁组小伙子完成某模块后, 忙着约会没有打tag。导致后面有人提交了commit,需要有人加班帮忙补打标签。 心中无女人,代码自然神。周六加班帮忙补打完tag的我走在路上,寒风凌烈,是时候买个帽子保护头发了。

查看当前分支的提交历史 里面包含 commit id

git log --pretty=oneline

git tag -a <标签名>

or

git tag -a <标签名> <commitId> -m '标签内容文字描述'

删除本地tag

git tag -d <标签名>

删除仓库tag

git push origin :refs/tags/<标签名>

将代码切换到某个标签

git checkout -b <tagName>

实际应用

适用场景:什么,小明又回家逗悠米(狗子)了? test 分支tag又没打?首页 => 用户详情的标签对吗?让我来。(地铁上大家都在看我的掘金帽子,嘿嘿嘿。什么?看我光头?)

git log --pretty=oneline // 得到了commit id'85593cbdebe188a3d28d32003e6175d946971688'

git tag -a v1.0.0.1 85593cbdebe188a3d28d32003e6175d946971688 -m '稳定版本 v1.0.0.1' // 创建完成

or

git tag -a v1.0.0.1 85593cbdebe188a3d28d32003e6175d946971688 -m '首页 => 用户详情 完成后的稳定版本 v1.0.0.1'

git push origin v1.0.0.1 // 推送仓库完成

git ls-remote --tags origin // 确认一下,的确成功了

自此,所有的tag相关内容完成了,下面是一些git的其他乱七八糟的命令了。

git杂项命令

1、查看当前本地代码状态(add前和commit前)

git status

2、查看上次代码pull后的所有提交记录

git log

3、从A分支上某次提交同步到B分支上

3.1 切换到A分支并且找到提交id 85593cbdebe188a3d28d32003e6175d946971688

git log --pretty=oneline

3.2 切换到B分支

git cherry-pick 85593cbdebe188a3d28d32003e6175d946971688

3.3 保持良好习惯

git pull origin B

3.4 提交代码,下班,回家抱娃。

git push origin B

最后,如果文章有什么问题或者是有什么其他想讨论的,大家一定要提出来。谢谢大佬。

Copyright © 2010-2022 dgrt.cn 版权所有 |关于我们| 联系方式