git的分支 - 标签 -以及ssh免密配置- idea中的git

目录

1. 分支

1.1 分支创建

1.2 查看分支

1.3 合并

1.4 切换分支

1.5 删除分支

2. tag

2.1 附注标签

2.2 轻量级标签

2.3 列出已有标签

2.4 查看签信息和与之对应的提交信息

2.5 如何在后期打标签

2.6 通过指定的标签创建分支

2.7 删除标签

2.8 共享标签

2.9 检出标签

3. 配置ssh

3.1 使用如下命令检查本机是否配置ssh

3.2 生成秘钥

3.3 配置gitee仓库

3.4 测试ssh

4. Idea中git使用

4.1 从远程仓库克隆

4.2 在idea中新建一个项目,并push到gitee


1. 分支

git中分支的概念和svn及cvs等vcs系统总的概念是一样的,但实现机制不同,git中的分支更轻量,创建和删除分支的开销极小。

使用分支的一个典型场景: 1)你需要做一个新功能的开发 2)你创建了一个分支,在这个分支上进行新功能的开发 此时你接到上线系统有一个需求紧急修复的问题,你的做法是: 1)切换到线上系统对于的分支。 2)为修改紧急问题新建一个分支(例如:issue-191206) 3)在新建的分支中修改问题,测试通过后,合并这个修改到线上分支 4)切换回你的新功能开发分支继续新功能的开发。

1.1 分支创建

该命令用来创建分支

git branch 分支名

创建分支完成后,同时切换到刚创建的分支上

git checkout -b  分支名

1.2 查看分支

git branch 

绿色的小信号表示当前所在的分支。

1.3 合并

1)首先切换到需要合并到的目标分支,例如A分支合并到B分支,则B分支为合并到的目标分支

2)执行合并命令

#这里的分支名是需要合并的分支名,如上例中提到的A分支
git merge 分支名

那么 我们需要到B分支上 执行 git merge A 把A分支合并到B分支上

1.4 切换分支

git checkout 分支名

1.5 删除分支

git branch -d 分支名

2. tag

tag代表了当前的提交节点,是当前节点的一个标记记录,tag的名字不能重复,tag也不可以修改,不能在一个tag上继续提交。 branch(分支)是代表的一个分支,可以分支上继续提交。

Git 支持两种标签:轻量标签(lightweight)与附注标签(annotated)。 轻量标签: 轻量标签很像一个不会改变的分支——它只是某个特定提交的引用

附注标签是存储在 Git 数据库中的一个完整对象, 它们是可以被校验的,其中包含打标签者的名字、电子邮件地址、日期时间, 此外还有一个标签信息

2.1 附注标签

$ git tag -a v1.4 -m "my version 1.4"

附注标签是存储在 Git 数据库中的一个完整对象。 它们是可以被校验的;其中包含打标签者的名字、电子邮件地址、日期时间;还有一个标签信息;并且可以使用 GNU Privacy Guard (GPG)签名与验证。 通常建议创建附注标签,这样你可以拥有以上所有信息。

2.2 轻量级标签

$ git tag v1.4-lw

通常我们使用的是轻量标签,一个轻量标签很像一个不会改变的分支,它只是一个特定提交的引用,本质上是将提交校验和存储到一个文件中,没有保存任何其他信息。 创建轻量标签,只需要提供标签名字

2.3 列出已有标签

$ git tag

2.4 查看签信息和与之对应的提交信息

$ git show v1.4

2.5 如何在后期打标签

有时需要通过前面的某次提交来打一个标签(比如忘记了及时打标签,后面才想起来)可以使用如下命令

##  查看提交记录


$ git log --oneline
ee07767 (HEAD -> master, tag: v1.0.0) modified f ff
19d7f5f modified 
c90073d Merge branch 'dev' into master
cccca29 add f file
bf11147 add e file

## 通过指定的提交hash值来打标签
$ git tag -a v1.2 c90073d
查看提交记录 完整提交编号
$ git log --pretty=oneline
d90ed6f4780bd04a96fb202a9f2db502b7335fc3 (HEAD -> master, origin/master, origin/HEAD) add ccff.
3b32455087e3e0365fe0f24481e967c8f88fdb30 Merge branch 'text1.0'
5383997dde39e03e590fc6e40baa27b92359c4bc 测试cc
ec4ebc14a50efb1ffb062a282ee1d37239047e77 测试aa提交
4c9162eddb8f3074364912c7b724ff97792833be 修改冲突
f39c7ba336cf017bc3b64eb167b0a98f79e59b39 修改了bj
e145ff717c58b920e7ff9de0e59a84ee197bd037 修改好了的冲突
1dd02635e92f40621cad54f030e11931b7558498 修改bj.txt sss
a7369359260f04ed86d1bf0efd4d3084eada101a 修改了cc
aa9749b05bdfcf11c3eccf3ce2f5baf524b95431 测试文档pptx
676a5b58d7a70732ed207f937036fe188fe809c4 测试文件-bj
853368403e75b756ca5143c15fa20cb48ee59030 测试文件
## 通过指定的提交hash值来打标签
$ git tag -a v1.2 e145ff717c58b920e7ff9de0e59a84ee197bd037

2.6 通过指定的标签创建分支

$ git branch hotfix v1.0.0

hotfix 为分支名s

v1.0.0 为标签名

2.7 删除标签

$ git tag -d v1.0.0
//响应结果
Deleted tag 'v1.0.0' (was ee07767)

2.8 共享标签

git push 命令并不会传送标签到远程仓库服务器上。 在创建完标签后你必须显式地推送标签到共享服务器上。 这个过程就像共享远程分支一样——你可以运行 git push origin <tagname>

$ git push origin v1.5


Counting objects: 14, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (14/14), 2.05 KiB | 0 bytes/s, done.
Total 14 (delta 3), reused 0 (delta 0)
To [email protected]:schacon/simplegit.git
 * [new tag]         v1.5 -> v1.5

2.9 检出标签

$ git checkout v1.4

注意: 如果你做了某些更改然后提交它们,标签不会发生变化, 但你的新提交将不属于任何分支,并且将无法访问,除非通过确切的提交哈希才能访问。 因此,如果你需要进行更改,比如你要修复旧版本中的错误,那么通常需要创建一个新分支,创建方法请参见2.6

3. 配置ssh

首先进入git命令行

3.1 使用如下命令检查本机是否配置ssh

cd ~/.ssh

注:~代表当前用户的home目录

也可以直接查找

3.2 生成秘钥

ssh-keygen -t rsa

直接按三次回车(为什么按三下,是因为有提示你是否需要设置密码,如果设置了每次使用Git都会用到密码,一般都是直接不写为空,直接回车就好了) 生成的公钥和私钥存在的当前用户目录的.ssh目录中 用户名称可能有所不同(C:\Users\Administrator.ssh) 生成后 文件

3.3 配置gitee仓库

登录gitee 打开设置

添加完成后 点击确定 输入密码 添加成功后

效果:下方会有一个 ssh公钥数

3.4 测试ssh

ssh -T [email protected]

4. Idea中git使用

4.1 从远程仓库克隆

1)在新建项目时选择从git仓库克隆

2)复制要克隆的远程仓库的地址

3)将复制的地址粘贴到idea的url输入框

4)点击克隆即可:

4.2 在idea中新建一个项目,并push到gitee

1)新建一个java项目 2)创建git仓库

点击ok

3)加入暂存区

 

4) 提交

输入 说明后 点击commit即可

5)在gitee上创建一个与项目同名的空仓库,(可以不同名,但建议同名)

6)复制远程仓库的地址

7)为项目配置远程仓库

8)将项目推送到远程仓库

注: idea中有些特有的文件不需要提交 还有某些文件不需要提交时需要编写 gitignore文件

猜你喜欢

转载自blog.csdn.net/qq_62898618/article/details/127247728