《算法互动编程》操作指南(二)

栏目: 编程工具 · 发布时间: 6年前

内容简介:之前已经写了两篇文章,分别是《同时提到,使用软件或者命令行来操作,就不存在那些问题。这篇就来介绍一下如何使用软件和命令行完美解决这个问题。

一、背景

之前已经写了两篇文章,分别是《 代码管理指南 》和《 三个原则 》来说明通过 github 互动编程时遇到的问题。

同时提到,使用软件或者命令行来操作,就不存在那些问题。

这篇就来介绍一下如何使用软件和命令行完美解决这个问题。

二、分支规范

为了更好地互动编程,大家 Fork 项目之后,会维护三个分支,名字和功能如下。

1.master 分支:默认分支,需要和原项目保存完全一致。

2.base 分支:名字格式是 base-{昵称},后续你的所有变更都提交在这个分支上。

3.from 分支:名字格式是 from-{昵称},每次进行 PR 时从 master 分支创建出来,然后把 base 分支合并上来,然后进行 PR,当 PR 结束的时候,需要删除 。

对于不熟悉 git 的同学,建议都通过 github 页面进行创建。

三、操作说明

1.安装

请去 https://desktop.github.com/ 下载安装软件 或者 自己搭建命令行环境。

  1. 拉去自己 Fork 的项目

命令行: git clone url
软件如下:

《算法互动编程》操作指南(二)

  1. 同步原项目代码

命令行:

1. git remote add upstream https://github.com/tiankonguse/leetcode-solutions.git  
2. git fetch upstream master  #拉去最新数据  
3. git merge upstream/master  #合并  
4. git push origin master #推送到 github

PS:正常同步时,你可以看到 Fast-forward 这个词。

如果不是这个词,说明你的项目有问题,可以删除重新 Fork。

软件操作步骤:

1.切换到master分支  
2.菜单->Branch->Merge in Current Brabck  
3. 弹出的选择框里选择 upstream/master (代表原项目)

《算法互动编程》操作指南(二)

目前,只是修改的本地 master,还需要同步到远程

《算法互动编程》操作指南(二)

  1. 同步开发分支

由于原项目可能有更新,所以你的分支也需要同步这个更新。

这个可以通过 github 的页面来完成同步(会新增一个提交),也可以通过软件或命令行来同步(不会新增提交)。

如果没出现冲突代表正常,出现冲突代表你修改了不属于你的文件。

git checkout base-{昵称}
git merge master
git push origin base-{昵称}
  1. 创建新的提交分支

可以通过 github 的页面,基于 master 分支来创建新的提交分支。

也可以通过软件或者命令行来操作。

git checkout master
git branch -d from-{昵称} # 删除本地分支
git push origin --delete from-{昵称} #删除远程分支

git checkout -b from-{昵称} #创建本地分支
git merge base-{昵称} # 你的最新修改合并到提交分支
git push origin from-tiankongever #提交分支提交到 github页面

之后,在 github 页面发起 pull request 操作。

四、最后

好了,除了向原项目发起 pull request ,其他操作建议大家都在命令行里练习一下。

刚开始对于不熟悉 git 的同学会比较有挑战性,希望不会难倒你。

如果有任何疑问,可以加 QQ 群来反馈问题。

-EOF-


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)

架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)

Martin L. Abbott、Michael T. Fisher / 陈斌 / 机械工业出版社 / 2016-4-15 / 99.00

任何一个持续成长的公司最终都需要解决系统、组织和流程的扩展性问题。本书汇聚了作者从eBay、VISA、Salesforce.com到Apple超过30年的丰富经验, 全面阐释了经过验证的信息技术扩展方法,对所需要掌握的产品和服务的平滑扩展做了详尽的论述,并在第1版的基础上更新了扩展的策略、技术和案例。 针对技术和非技术的决策者,马丁•阿伯特和迈克尔•费舍尔详尽地介绍了影响扩展性的各个方面,包......一起来看看 《架构即未来:现代企业可扩展的Web架构、流程和组织(原书第2版)》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具