likes
comments
collection
share

Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

作者站长头像
站长
· 阅读数 6

Level 6-5 《模拟团队合作》

Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

这一关模拟团队成员更新的远程仓库,而你在本地仓库也添加了新的提交,这时需要使用git pull下载远程最新更新,并与本地提交合并。不仅在游戏里学习,你还可以在真实环境中进行实验。

游戏答案:

# 将远程仓库克隆到本地
git clone

# 模拟在远程仓库中做两次提交
git fakeTeamwork 2

# 在本地提交一次
git commit

# 下载远程仓库最新更改,然后与本地分支进行合并,生成新的提交
git pull

创建远程仓库

你需要为这一关创建一个远程仓库,本文以gitee为例进行演示。

  1. 点击右上角加号创建仓库 Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

  2. 为仓库命名 这一步只起一个仓库名称即可,不要勾选其他选项 Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

  3. 复制仓库地址 Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

准备实验环境

这里设置一个临时环境变量,保存你的远程仓库地址,也就是上面你复制的远程仓库地址,后面用到远程仓库地址时直接引用该变量:

set LGB_REMOTE=https://gitee.com/你的账户/你的远程仓库

下面命令完整CV到Windows cmd命令行窗口中执行:

# 准备一个临时目录,准备好远程仓库后,会将这个临时目录删除
mkdir level-6-5-tmp
cd level-6-5-tmp

# 初始化本地仓库
git init

# 做两次提交
echo 111>>a.txt
git add .
git commit -m "c0"
echo 222>>a.txt
git add .
git commit -m "c1"

# 关联远程仓库,将远程仓库命名为origin(习惯名)
git remote add origin %LGB_REMOTE%

# 将本地仓库推送到远程仓库
git push origin -f -u --all

# 回到上层目录,然后删除临时文件
cd ../
rmdir level-6-5-tmp /S /Q

真实答案:

# 将远程仓库克隆到level-6-5目录
git clone %LGB_REMOTE% level-6-5

下面模拟团队成员更新了远程仓库,创建了两个新的提交,即游戏中的模拟命令git fakeTeamwork 2

# 远程仓库克隆到一个临时目录
git clone %LGB_REMOTE% level-6-5-tmp

# 做两次提交
cd level-6-5-tmp
echo 333>>a.txt
git add .
git commit -m "c2"
echo 444>>a.txt
git add .
git commit -m "c3"

# 推送上传到远程仓库
git push origin --all

# 回到上层目录,删除临时目录
cd ../
rmdir level-6-5-tmp /S /Q

上面模拟了团队成员在远程仓库中添加了两次提交

继续:

# 进入本地仓库
cd level-6-5

# 做一次提交
echo 555>>a.txt
git add .
git commit -m "c4"

# 下载远程仓库最新提交,然后与本地提交进行合并,再生成新的提交
git pull

下载的远程提交与本地提交合并时,会有文件冲突:

Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

需要手动修正文件,然后再进行提交。


# 手动修正a.txt后再继续

# 生成新的合并后的提交
git add .
git commit -m "c5"

# 查看提交树
git log --graph --pretty=oneline --all

Git闯关游戏:Learn Git Branching Level 6-5 模拟团队合作

转载自:https://juejin.cn/post/7137613175603609631
评论
请登录