git tag以及git

 

git tag 以及git

先说收获

1. git bash windows

类似于linux的bash提供的shell命令行窗口,可以执行很多linux命令,cd pwd ls vim cat touch mkdir,还可以用正则匹配查看标签。相当于在windows上装了一个小的linux。git init myproject可以创建一个.git管理的目录

2. git log --oneline

方便查看最近的提交的HEAD、tag、origin情况

3. working tree

翻译过来是工作树,应该是当前在哪个分支上,修改了什么,或者没有修改什么,这些目录结构和文件结构的一个架构像一个树一样。所以叫当前的工作的树,working tree

4. 查看标签详细信息

git show v0.0

5. 修改分支名称

git branch -m cs abc

6. 查看当前git管理的状况

git status

7. git管理概念

version control,核心是这些都是在本地各种各样操作,同步不同步origin,包括从不从origin拉代码,都是很多操作中的一个而已,要求就是网络是通的。包括config user.name user.email其实都是本地是活。所以git的核心功能就是在本地管理一个项目目录。所以git的origin仓库相当于一个云盘而已,为多个开发者或者维护这个项目的人提供一个中间的上传和下载项目目录的中间存储而已。所以git的重点是在本地操作,和云盘只是一个上传和下载的关系,所以叫代码托管平台,而不是代码开发平台。git的80%可能更多都是在本地的操作。

8. 一个本地目录可以关联多个远端仓库比如githubgitee

9. git merge 可以merge指定的tag到当前分支

分支是动态指针,tag是静态指针。合并之前git show tagname确认一下标签的具体情况

10. 可以v1.8.5-rc0一个v1.8.5的正式版的注释标签

双标签是可行的。用下面这个命令查询

> git show-ref --tags

11. git tag显示顺序问题

查找出来的标签,是按照字面顺序排序的,不是按照打标签的时间排序的

 

12. git 异步处理文件的方式

git比如modified有2个文件,可以只add其中一个,然后commit这个add,然后push。另外一个modified的文件可以异步add commit和push

 

13. git merge 细节

git merge 产生冲突的时候,解决冲突的页面HEAD是本地的指针内容,origin是远程的内容,看是要哪个还是都要。如果搞错了,那就git merge --abort取消这次merge,所以合并的时候可以大胆搞,除了drop、truncate、delete、update和alter的这些DDL或DML偏向于删和改的操作的sql语句,其他应该就是都accept both,然后让测试去测。部署仓的其他模块基本上都是accept both,因为基本上都是加配置,新版本比旧版本减少东西的情况应该很少,sql要注意一下,偏向于accept both,有的操作同一个表的时候要注意看是不是减少

 

14. git主要是在本地操作

git几乎90%的操作都在本地,应该只有git clone git pull git push是属于跟服务器交互的。所以Linus开发这个就是为了研究Linux内核,协作开发方便。

 

15. git restore .  撤销当前工作区的所有修改

      git restore 文件名,撤销当前工作区单个文件的修改

 

 

 

 

一、git tag

1. 查看最近的tag

git log --oneline

2. 指定提交,为这次提交打标签

git tag v1.0 commit_hash_string

3. 给指定提交,加注释标签

git tag v0.0 -a -m '启动项目' commit_hash_string

4. 查看标签

4.1 普通查看

git tag

4.2 正则匹配查看标签

git tag -l 'v1*'

5. 查看标签的详细信息

git show v0.0

6. 本地库推送origin库(git push不会把tag推送到origin库,需要单独push tag)

6.1 查看远程库的信息

git remote -v

6.2 推送单个标签到origin库

git push origin v0.0

6.3 推送所有标签到origin库

git push origin --tags

7. 删除标签

7.1 删除本地标签

git tag -d v1.8

7.2 删除origin标签

git push origin -d v1.8

 

二、说一说git

1. 介绍

git的bash命令行好像用起来和Linux命令差不多,不是windows的那种,而是Linux风格的那种。可以用pwd, ls,还可以用ls -a,这几个命令在windows的cmd都用不了

这样就适合系统管理员了。要熟悉命令,可能用起来比vscode点点点可能还要更舒服,前提是熟练的话。它会管理这个目录,还有snapshot功能

 

首先要明白的是,这个命令看着简单,字很短。可能会给人一种错觉,这个不是特别麻烦,好像很简单。就是git clone,git pull,git push,git checkout这些。其实这个工具很强大,用的一般,工作起来很多东西就要手动去搞,或者靠眼睛和记忆力去做。比如哪个版本改了什么,哪个分支哪次提交又怎么样了,合并分支解决冲突等等,很多细节在里面。但是用的好的话,可以省很多力气,也增加容错,不靠记忆力和经验去做。

具体知识点就边看边总结吧

git 是干嘛的?官方视频里面说的是version control,翻译过来是版本控制,但是从英文的角度来说,好像更能感受到设计这个工具干嘛。

you can version-control items just on your desktop, just with a single piece of software available at the command line. 用个命令行就可以控制

git init myproject 可以创建一个目录

cd myproject

git add .

git commit -m "importing all the code" 可以permanently records a historical

git checkout master

git commit -a -m "my new logo"

git checkout -b danasfeature

git commit -a -m "my feature code"

git push origin danasfeature

git pull

git merge danasfeature

git add -p myreport.markdown

git commit -m "added latest statistics"

git log --graph --decorate --abbrev-commit --all --pretty=oneline

git config --global user.name "Dana Devops"

git config --global user.email "danadevops@gmail.com"

git init project1

cd project1

create file1.txt

git add file1.txt

git commit -m "my first commit"

 

 

git的副标题是everything-is-local,意思应该是push和pull只是和远程仓库交互的,大部分的作用是在本地对project directory进行各种控制和snapshot和reviewz

这个username和email也是主要在本地来记录commit的提交记录的,和origin仓库交互只是终端手段而已。git version control system

2. 工作也叫文件

git status等命令给出的信息好像都有个什么什么tree,有时候不知道是啥意思。英文语境下好像不这么叫吧,work zone,或者啥,好像是叫什么什么树。所以把工作区称为文件树可能贴合它的实际情况吧。git的命令在windows上也可以用git --help。然后常用的命令都有解释,和linux上差不多。而且这个工作区,看git上的提示信息好像都是说working tree,比如下图中的参数解释中,也多提到working tree,而不是工作区,翻译过来应该叫工作树。在windows上不能用man git,而能用下面列出的git help -a

3. .git这个隐藏目录

4. 一个文件恢复

5. 一个文件恢复指定committed_hashid

git checkout committed_hashid file_name

如图:

 

6. 已经committed怎么撤销

7. 分支管理

8. 修改分支名称

git branch -m cs abc # -m 应该是modify

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值