【武sir_B站课程】git课程笔记_15/16_三里屯和忘推代码

(0)引言

# 课程链接:

git实战(老男孩最新视频)_哔哩哔哩_bilibili

# 本文覆盖的课程内容【代码的双引号一律是引用的意思!!!】:

15_奔波于沙河和三里屯之间

16_约妹子忘推代码了

(1)奔波于沙河和三里屯之间

#(1)假设场景和明确整个版本工作流。如图所示,为了便描述我们假定工作流有master和dev以及bug三个分支,且所有的版本如下。我们假设一个使用场景,即在 A(家) 和 B(公司) 两个地点(两地点使用不同的电脑,且代码库都是从github仓库clone的,也就是一模一样),通过github仓库(当前存有 master 和 dev 分支数据)实现同步开发。具体版本情况如下图。

                1)版本合并获取最新代码。事实上,A地点本地的工作流是和github仓库的代码完全相同的,因为这是直接 git clone 下来的。由于我们是要继续开发(即在 dev分支上),而dev 分支的最新版本是 C6 ,并不包含最新的代码,因此要把 C7 版本整合到dev分支中,才能在最新的版本上进行开发,从而实现同步。同时要注意,我们是在 dev 分支上开发,因此是要往 dev 分支合并!!!

                2)在B点拉下来代码。由(1)的假设可以知道,当前B的代码库是没有a1.py文件的。也就是说我们需要更新B的代码库,使得B与A的是相同的。那么我们使用下面的命令实现代码库更新 " git pull origin dev ",该命令就是从origin(要记得这个是GitHub仓库的地址)的dev分支拉取最新代码,相当于替换本地的dev分支的代码。由此往复,就能够实现两地的开发了。

                3)简单总结。后面的红框,事实上就是和第二部分一样的,我们之后是循环往复即可。【一定要学会思考】

                4)部署上线。假设我们已经把新功能开发好了,就应该部署上线了,那么我们要将dev分支的版本合并到master分支上面。


 (2)约妹子忘推代码了

# (1)场景:新功能还在开发,但是在 A 点忘记推送代码(但是已经生成了本地版本,且记为C1版本)。

               

                1)如图所示,是给出的一个解决方法。假设我们在工作地点(A点)忘记推送了尚在开发新功能(完成度50%)的版本 C1 ,显然,回到家中(B点)我们无法从 GitHub 仓 库中获取 C1 ,这个时候我们可以选择先开发其他功能的版本,设为 C2 。之后我们回到工作地点(A点)时,就需要从 github 仓库中把 C2 拉下来,与 C1 进行合并,从而更新最新的版本。但是 C1 和 C2 版本合并时,很可能会冲突,因而需要手动解决再更新和生成版本。

#(2)具体实践。

                1)在工作地点(A点),完成的版本 C1 ,我们起个名字是女神约饭。如图所示为具体命令。(对于 a1.py 我们是为了简便,直接修改一下就可以了)。

                 2)而后,由于女神约我吃饭,所以在工作地点(A点)时,忘记推送了女神约饭版本。这个时候地点切换到了家里(B点)。我们想要继续编写代码。如图所示,为具体实践。

                 3)第二天,我们来到了工作地点(A点),从 github 仓库拉取代码,此时,很容易遇到一个代码冲突问题,因而需要我们手动解决。补充一点,使用clear命令,可以把git bash之前的操作记录清空(把界面变干净而已。)

                 4)如图所示,我们手动解决冲突,并且完成新功能的开发。为了便于查阅变化,我们可以经常使用 cat 命令来查看所修改文件的内容。而后我们可以使用常规的git操作来生成版本,并且推送到 github 仓库。这里我们不赘述了。

# (3)补充命令。

                1)解释一下 git pull origin dev 命令的组成。事实上, git pull origin dev 等同于两个命令的合成,分别是 git fetch origin dev 和 git merge origin/dev 。(是有先后顺序的,前者在前,后者在后)。如图所示,我们在加入了远程仓库后的 git 分区情况。可以看出,前者是将远程仓库的代码拉制版本库,而后者则是将版本库拉到工作区。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值