目录
一.Git概述:
1.1何为版本控制:
1.2为什么需要版本控制:
二.Git的安装:
前面几个默认:
测试是否完成了安装:
鼠标右键–git bash
三.Git的常用命令
1.设置签名:
验证用户签名是否设置成功:
在c盘的用户目录下找一个git开头的文件打开:
3.初始化本地库:
3.4查看本地库状态:git status
编写一个文件并提交:
先使用i进行输入一行代码,然后esc退出,并yy复制,并p粘贴,然后:wq退出。
并查看ll 查看有哪些文件,并查看文件内容cat hello.text
$ tail -n 3 hello.text
hello.git
hello.git
hello.git
//查看最后三行的内容
再次查看git的状态的时候:git status
3.5将文件添加到暂存区:git add 文件名
3.5提交本地库:git commit -m “注释” 本地库文件名
将暂存区的文件提交到本地库:并查看状态 git status
查看当前分支的版本信息:
3.6修改并提交到暂存区:
第二次提交并查看:
3.7版本穿越:
git reset --hard d9d06e2(版本号)
版本切换的原理:
通过指针移动来实现的版本切换:
四.Git分支操作
4.1什么是分支:
4.3分支的操作:
分支合并:
4.3.6合并产生冲突:
合并分支出现冲突:merge:合并的意思
4.3.7手动合并分支:
(1)vim编辑保存文件
(2)添加文件到暂存区
(3)提交执行:
合并分支的原理:
head指向的是分支。
五.Git团队协作机制
5.1团队内协作
5.2跨团队协作:
六.GitHub操作
GitHub: https://github.com/.
我的github账号为fandongdong666,fan电话;
创建一个共有的库:
然后复制链接:
6.2.1创建远程库的别名:
6.2.2推送本地分支到远程仓库:
准备工作:
开始推送到外国的服务器:
6.2.3拉取远程库到本地库:
6.2.4克隆远程库到本地:
发现:别名都起好了
6.2团队内协作:
主分组库邀请团队成员才能push(提交代码):
开发组织者发送邀请函给开发成员:
开发成员登陆自己的github账号并复制邀请函到地址栏:
然后出现是否同意加入开发组:
主管拉取远程库代码到本地库:
6.3跨团队协作:
先在本人github中提交远程代码:
然后创建拉取请求:
组织者发现有人提交代码:
合并团队外人的代码并确认:
6.4SSH免密登录
生成秘钥:
指令是:$ ssh-keygen -t rsa -C xxx@qq.com
-t rsa: -t指定的是加密算法,rsa是非对称协议的算法。-C是描述
添加公钥:点击New SSH K ey
此时当前登录的这个账号就可以利用ssh链接进行代码的push和pull.
七.IDEA集成Git
7.1配置Git忽略文件
IDEA中有iml等文件。
在用户目录下创建一个text文件。修改成git.ignore
并输入以下内容:
# Compiled class file
*.class
# Log file
*.log
# BlueJ files
*.ctxt
# Mobile Tools for Java (J2ME)
.mtj.tmp/
# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
.classpath
.project
.settings
target
.idea
*.iml
将忽略文件引用到config文件中:
[core]
excludesfile = C:/Users/fan/git.ignore
7.2定位Git程序
并测试test
7.3初始化本地库
7.4添加到暂存区
7.5提交到本地库(还存在于本地的git库中)
7.6切换版本
先修改当前版本的一些代码,发现文字变蓝色*(被git追踪,但是修改了),接下来需要被add到暂存区,再被提交到本地库
注意。蓝色文件如果不想添加到暂存区,是可以直接提交到本地库的,即直接commit
黄色的指针是当前界面的指针指向的是哪个版本。
切换到当前版本:
7.7创建分支
第二种春构建分支的方式:
7.8切换分支
7.9合并分支
正常合并:
合并冲突:
什么时候发生合并冲入呢,当支线分支修改了代码并提交了,而主分支master也在同样的地方修改了代码并提交了。此时合并会出现合并冲突:
站在主分支上合并支线分支发生冲突:
7.10解决冲突
然后applay即可
八.IDEA集成GitHub
8.1设置github账号
添加账号:
在网页版登录自己的github账号,并生成口令:
口令权限全部打钩。
然后生成:
如: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
8.2分享项目到GitHub上
这个分享,相当于创建远程库并push本地库代码到远程库。
8.3push推送本地库到远程库
第一种方式:
第二种方式:
使用免密登录方式push
8.4pull拉取远程库到本地库
8.5clone克隆远程库到本地
或者新版的idea:
九.Gitee码云
9.1简介
9.2创建账号和登录:
需要自己注册和登录;
9.3码云创建远程库:
新建仓库:
9.4IDEA集成码云
然后设置:
分享代码到码云:
方式一:
方式二:
远程库代码被修改了,则本地库需要拉取:
将Github上的代码迁移到码云上:
先拿到GitHub上的https地址:
同步GitHub中的更新代码:
十.自建代码托管平台-GitLab
在虚拟机中修改:
修改主机名:
脚本复制上去后,保存退出: