石小疯 发表于 2024-7-29 22:13:23

zyx青岛实训day14 7/25

Git
一种分布式版本控制系统,用于跟踪和管理代码的变更
一.Git的主要功能:
https://i-blog.csdnimg.cn/direct/c5b35379879d473882caa774f6e48e6c.png
二.准备git呆板
修改静态ip,主机名
三.git堆栈的建立:
1.安装git
# yum -y install git
2.创建一个目录----用来放置git文件
# mkdir /yy000
3.利用git指令,一定要cd到初始化之后的目录
cd到yy000目录中利用init指令初始化
# mkdir /yy000
# cd /yy000/
# ls
# git init  //将我们当前的目录变成一个工作区
4.初始化空的 Git 版本库于 /yy000/.git/
# vim Test.java  //添加一个文件
# ls
Test.java
5.# git add Test.java   //将Test.java放到缓存内里
6.# git commit -m "新建了一个Test.java文件,这是新建的"   //提交放到堆栈内里
https://i-blog.csdnimg.cn/direct/55e45915ff77442f880b1bcb54dfcb9d.png
7.创建用户及邮箱
# git config --global user.name tjj
# git config --global user.email 3490805063@qq.com
8.修改Test.java文件,添加一行解释
# echo "//这是一行jav解释,不会被编译,能提交 文件的可读性" >Test.java
# git log  //查看日志
# git commit -m "这是第二次提交"
# git log
https://i-blog.csdnimg.cn/direct/8739aceb16754a23acc77067d46a79c4.png
# echo "//我又加了一个解释" >> Test.java
# git add .
# git commit -m "将缓存中的内容提交到堆栈"
# git log
https://i-blog.csdnimg.cn/direct/68e0647a91ee4ecfa6ba5a0e8a9f342e.png
四.git的根本流程
https://i-blog.csdnimg.cn/direct/541b738924254409b4d50c1bdf5bc580.png
https://i-blog.csdnimg.cn/direct/1c94fb7d5918437b88bca88383d87b50.png
五.分支
1.查看当前堆栈的分支
# git branch
* master   //当前只有一个master主分支,当工作完成后,其他的分支都会合并到主分支
要求abc三个人实现一个接口
一个文件在同一时间只能被一个用户编辑
2.格式:
创建分支
git branch 分支名称
git checkout -b 分支名称
跳转分支
git checkout 分支名称
删除分支(两个分支合并的情况下)
git branch -d 分支名
强制删除分支(即使该分 支尚未合并),可以利用以下下令:
git branch -D 分支名
合并分支
git merge 分支名称
3.例子:
(1)# git branch abranch  //创建分支
# git branch   //查看分支
  abranch
* master
(2)切换到abranch分支上
# git checkout abranch
切换到分支 'abranch'
# git branch
* abranch
  master
# ls
Test.java
(3)# echo "我睡觉哦" >> Test.java  //写入内容并追加到Test.java文件中
# cat Test.java
https://i-blog.csdnimg.cn/direct/f9dad3b23de04f1289c3e265fb8fa9d5.png
(4)# git add .  //将分支写的内容提交到缓存
(5)# git commit -m "我提交的"  //提交新分支并解释为“我提交的”
# git checkout master
切换到分支 'master'
# git branch
  abranch
* master
# cat Test.java
https://i-blog.csdnimg.cn/direct/27bdcb34b22344d28d5fb39709bf7458.png
刚才写入的内容没有了,是由于之前是在其他分支上操作的,并非在master
上 ,所以切换回master后,表现的内容只会是master分支上的内容

# git checkout -b bbranch   //-b在切换分支的同时创建分支
切换到一个新分支 'bbranch'
# git branch
  abranch
* bbranch
  master
# cat Test.java
https://i-blog.csdnimg.cn/direct/b49986f006a040f19d8abe88d9998b9f.png

# echo "我是b" >> Test.java
# git branch
  abranch
* bbranch
  master
# git  checkout abranch
M       Test.java
切换到分支 'abranch'
# cat Test.java
https://i-blog.csdnimg.cn/direct/e90fc6ee8768464b946d9bc399554dc6.png
这两个分支可以共享

# git commit -m "aaa"
# git  checkout master
# mkdir abc
# ls
abc  Test.java
# touch efg
# git add abc/
# git commit -m "更像一个目录"
# 位于分支 master
# 未跟踪的文件:
#   (利用 "git add <file>..." 以包含要提交的内容)
#
#       efg
提交为空,但是存在尚未跟踪的文件(利用 "git add" 建立跟踪)
# git add efg
# git commit -m "新增了一个efg"
新增了一个efg
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 efg
# git add .
# git commit -m "全部都提交"
今世码任务完成后,必要将更改合并回主分支。首先,切换回主分支
# git  checkout master
# git merge abranch  //在master内里把a修改的合并到master
# git log
https://i-blog.csdnimg.cn/direct/738c8caa46154d0787a33bb2a9838edc.png
删除分支(合并的情况下)
# git branch -d abranch  
# git branch -d bbranch  
# git branch -d cbranch  
# git branch
* master
六.分支冲突:
在合并的时候,有可能出现文件冲突(主分支修改了文件,zhangsan分支也修改了这个文件,两个分支都发生了修改,合并的时候,就不清晰以哪个分支为主,产生冲突)
手动解决:
# echo "//我是主分支" > Test.java
# git checkout -b newbranch
# echo "//我是nerbranch分支" >> Test.java
# git add .
# git commit -m "abcd"
abcd
 1 file changed, 2 insertions(+), 4 deletions(-)
# git checkout master
切换到分支 'master'
# cat Test.java
//这是一行jav解释,不会被编译,能提交文件的可读性
//我又加了一个解释
我睡觉哦
我是b
# echo "sdsdwsdew" > Test.java
# git add .
如今两个分支都有修改要将新分支合并到主分支
# git commit -m "cjdsbvdj"
https://i-blog.csdnimg.cn/direct/f182c9514ee9482585c07ab9face671e.png
修改Test.java文件
# vim Test.java
# git commit -m "cjdsbvdj"  //再次合并
# git log
git拉取:
再启动一台主机
安装git
Yum -y install git
做一个免密登录到git主机上
ssh-keygen
ssh-copy-id root@192.168.2.30
克隆192.168.2.30上的资料
# git clone 192.168.2.30:/yy000/.git/
https://i-blog.csdnimg.cn/direct/56a4f211099b4ab798887a51a4db006f.png
修改内容
设置自己的姓名和邮箱
# git config --global user.name aaa
# git config --global user.email aaa@163.com
修改内容
# touch A.class
# git add .
# git commit -m "aaaa"
第一次利用对方的项目  git clone


七.在码云上创建项目
https://i-blog.csdnimg.cn/direct/65b23a998e1248e68f11d886bd7b4f1d.png
# git clone smt: 用于堆栈摆设
# cd smt/
# ls
README.en.md  README.md
# mkdir -p src/main/java/
# ls
README.en.md  README.md  src
# touch src/main/java/Test.java
# git add .
# vim src/main/java/Test.java
# vim src/main/java/Test.java
# git add .
# git commit -m “水蜜桃"
# git push


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: zyx青岛实训day14 7/25