Git安装
1.安装git
2.创建git仓库
3.创建文件并且提交文件 (git add . 将文件提交到缓存)(git commit -m 说明)(git log 查看历史)
4.分支创建与解决分支冲突问题
创建主机(git 192.168.1.26)
(1)[root@git ~]# yum -y install git
下图是安装成功
(2)[root@git ~]# mkdir /yy000 //存放git文件
使用git指令,一定要cd 到初始化最后的目录中
root@git \~\]# cd /yy000 \[root@git yy000\]# \[root@git yy000\]# git init //相当于建立一个工作区 初始化空的 Git 版本库于 /yy000/.git/ 有隐藏文件  (3)\[root@git yy000\]# vim Test.java public class Test{ public static void main(String \[\] args){ System.out.println("hello world"); } }   \[root@git yy000\]# git config --global user.name liyang \[root@git yy000\]# git config --global user.email [email protected] \[root@git yy000\]# echo "//这是一行java注释,不会被编译,能提交文件的可读性" \> Test.java \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性   分支的应用 \[root@git yy000\]# git log (查看历史提交记录) \[root@git yy000\]# git branch (仓库当前仓库的分支) \* master (当前只有一个master分支,这个分支叫主分支,最后所有分支会合到master主分支)  //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 \[root@git yy000\]# git branch abranch (切换分支) \[root@git yy000\]# git branch abranch \* master \[root@git yy000\]# #切换到a的分支上 \[root@git yy000\]# git checkout abranch 切换到分支 'abranch' \[root@git yy000\]# git branch \* abranch master \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 \[root@git yy000\]# echo "//我是a员工,我不骄傲" \>\> Test.java \[root@git yy000\]# cat Test.java (a分支可以看到) //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 //我是a员工,我不骄傲 \[root@git yy000\]# git add . \[root@git yy000\]# git commit -m "a员工提交的内容" \[abranch ba33d65\] a员工提交的内容 在(创建b分支,在b上创建内容a分支可以看到) \[root@git yy000\]# git branch \* abranch master \[root@git yy000\]# git checkout -b bbranch 跳转的时候创建分支 切换到一个新分支 'bbranch' \[root@git yy000\]# git branch abranch \* bbranch master \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 //我是a员工,我不骄傲 \[root@git yy000\]# echo "我是b员工" \>\> Test.java \[root@git yy000\]# git branch abranch \* bbranch master \[root@git yy000\]# git checkout abranch 切换分支 M Test.java 切换到分支 'abranch' \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 //我是a员工,我不骄傲 我是b员工 \[root@git yy000\]# git branch cbranch 创建分支 \[root@git yy000\]# mkdir abc \[root@git yy000\]# touch efg \[root@git yy000\]# ls abc efg Test.java \[root@git yy000\]# git add abc/ \[root@git yy000\]# gitcommit -m "更新一个目录" -bash: gitcommit: 未找到命令 \[root@git yy000\]# git commit -m "更新一个目录" # 位于分支 master # 未跟踪的文件: # (使用 "git add \
..." 以包含要提交的内容) # # efg 提交为空,但是存在尚未跟踪的文件(使用 "git add" 建立跟踪) \[root@git yy000\]# git add efg \[root@git yy000\]# git commit -m "新增了一个efg文件" \[master 82926d5\] 新增了一个efg文件 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 efg \[root@git yy000\]# git add . \[root@git yy000\]# git commit -m "所有的文件都提交" # 位于分支 master 无文件要提交,干净的工作区 分支的创建 \[root@git yy000\]# git branch abranch bbranch cbranch \* master \[root@git yy000\]# git merge abranch 没有什么理由,我就是要合并 \[root@git yy000\]# git log 分支的删除 \[root@git yy000\]# git branch -d abranch 已删除分支 abranch(曾为 2c99666)。 \[root@git yy000\]# git branch -d bbranch 已删除分支 bbranch(曾为 ba33d65)。 \[root@git yy000\]# git branch -d cbranch 已删除分支 cbranch(曾为 1b9eaa5)。 \[root@git yy000\]# git branch \* master \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 //我是a员工,我不骄傲 我是b员工 合并时有可能会出现文件冲突:比如:主分支修改了这个文件,zhangsan也修改了这个文件 两个分支都发生了改变,合并的时候就会出现冲突 \[root@git yy000\]# git branch \* master \[root@git yy000\]# echo "//我是主分支,我修改了文件0" \> Test.java \[root@git yy000\]# git checkout -b newbranch M Test.java 切换到一个新分支 'newbranch' \[root@git yy000\]# git branch master \* newbranch \[root@git yy000\]# cat Test.java //我是主分支,我修改了文件0 \[root@git yy000\]# echo "//我是newbranch分支" \>\> Test.java \[root@git yy000\]# cat Test.java //我是主分支,我修改了文件0 //我是newbranch分支 \[root@git yy000\]# git checkout master M Test.java 切换到分支 'master' \[root@git yy000\]# cat Test.java //我是主分支,我修改了文件0 //我是newbranch分支 \[root@git yy000\]# git checkout newbranch M Test.java 切换到分支 'newbranch' \[root@git yy000\]# git status # 位于分支 newbranch # 尚未暂存以备提交的变更: # (使用 "git add \ ..." 更新要提交的内容) # (使用 "git checkout -- \ ..." 丢弃工作区的改动) # # 修改: Test.java # 修改尚未加入提交(使用 "git add" 和/或 "git commit -a") \[root@git yy000\]# git add . \[root@git yy000\]# git commit -m "abcd" \[newbranch 838d01d\] abcd 1 file changed, 2 insertions(+), 5 deletions(-) \[root@git yy000\]# git checkout master 切换到分支 'master' \[root@git yy000\]# cat Test.java //这是一行java注释,不会被编译,能提交文件的可读性 //我又加了一个注释 //我又加了一个ABBABBBABABB注释 //我是a员工,我不骄傲 我是b员工 \[root@git yy000\]# echo "eft" eft \[root@git yy000\]# git add . \[root@git yy000\]# git commit -m "ccc" # 位于分支 master 无文件要提交,干净的工作区 \[root@git yy000\]# echo "fsddsgsFSGSSFF" \> Test.java \[root@git yy000\]# git add . \[root@git yy000\]# git commit -m "dadadadadad" \[master 1a56c36\] dadadadadad 1 file changed, 1 insertion(+), 5 deletions(-) \[root@git yy000\]# #主分支有修改,newbranch也有修改 \[root@git yy000\]# #现在要将newbranch合并到主分支 \[root@git yy000\]# git branch \* master newbranch \[root@git yy000\]# git merge newbranch 自动合并 Test.java 冲突(内容):合并冲突于 Test.java 自动合并失败,修正冲突然后提交修正的结果。 以上创造了一个冲突 解决冲突 \[root@git yy000\]# cat Test.java \<\<\<\<\<\<\< HEAD fsddsgsFSGSSFF ======= //我是主分支,我修改了文件0 //我是newbranch分支 \>\>\>\>\>\>\> newbranch \[root@git yy000\]# vim Test.java    Git拉去 新建主机(zhangsan 192.168.1.27 ) 安装git \[root@localhost \~\]# yum -y install git 做免密登录   \[root@localhost yy000\]# git pull Already up-to-date. \[root@localhost yy000\]# #修改内容 \[root@localhost yy000\]# #设置自己的姓名和邮箱 \[root@localhost yy000\]# git config --global user.name aaa \[root@localhost yy000\]# git config --global user.email [email protected] \[root@localhost yy000\]# #修改内容 \[root@localhost yy000\]# touch A.class \[root@localhost yy000\]# git add . \[root@localhost yy000\]# git commit -m "aaaaa" \[master 392138f\] aaaaa \[root@localhost yy000\]# #第一次使用对方的项目 git clone \[root@localhost yy000\]# #获取更新 就用git pull \[root@localhost yy000\]# #git clone 会在当前目录下创建新的仓库 在码云上面创建项目并且pull和push [Gitee - 基于 Git 的代码托管和研发协作平台](https://gitee.com/ "Gitee - 基于 Git 的代码托管和研发协作平台") (网址) 
点击初始化
root@localhost yy000\]# git clone https://gitee.com/effective-maple-leaf-c/laoli.git (复制自己的网址) \[root@localhost yy000\]# ls A.class efg laoli Test.java \[root@localhost yy000\]# cd laoli/ \[root@localhost laoli\]# mkdir -p src/main/java \[root@localhost laoli\]# ls README.en.md README.md src \[root@localhost laoli\]# touch src/main/java/Test.java  \[root@localhost laoli\]# git commit -m "文件提交" \[root@localhost laoli\]# git push Username for 'https://gitee.com': 13269546219 (输入网站的账户) Password for 'https://[email protected]': (输入网站的密码) Counting objects: 7, done. Compressing objects: 100% (2/2), done. Writing objects: 100% (6/6), 429 bytes \| 0 bytes/s, done. Total 6 (delta 0), reused 0 (delta 0) remote: Powered by GITEE.COM \[1.1.5
remote: Set trace flag 2846f492
To https://gitee.com/effective-maple-leaf-c/laoli.git
a8899d3..520fd68 master -> master
