DICOM:DICOM3.0标准中文版开源书籍编辑之”github仓库合并“

背景:

作为分布式版本控制系统的代表git和github已经成为大多数开发人员首选版本控制工具。由于其不同与SVN的集中式版本管理,因此在协同工作时的方式略有不同,下面让我们来对比分析一下(这里以本人的DICOM3.0标准中文版开源书籍为例):

合并他人的Github仓库(Merge Other’s Repo on Github):

1. 查看当前状态

F:\GitTest\zssuretest\DICOM-Chinese>git status
On branch master
Your branch is up-to-date with ‘origin/master‘.

nothing to commit, working directory clean

F:\GitTest\zssuretest\DICOM-Chinese>git remote -v
origin  https://github.com/zssure-test/DICOM-Chinese.git (fetch)
origin  https://github.com/zssure-test/DICOM-Chinese.git (push)
other   [email protected]-test:zssure-test/DICOM-Chinese (fetch)
other   [email protected]-test:zssure-test/DICOM-Chinese (push)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (fetch)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (push)

F:\GitTest\zssuretest\DICOM-Chinese>git pull
Already up-to-date.

2. 添加他人仓库


F:\GitTest\zssuretest\DICOM-Chinese>git remote -v
origin  https://github.com/zssure-test/DICOM-Chinese.git (fetch)
origin  https://github.com/zssure-test/DICOM-Chinese.git (push)
other   [email protected]-test:zssure-test/DICOM-Chinese (fetch)
other   [email protected]ithub-test:zssure-test/DICOM-Chinese (push)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (fetch)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (push)

F:\GitTest\zssuretest\DICOM-Chinese>git remote add kuangbi-mnhwa https://github.com/mnhwa/DICOM-Chinese.git

F:\GitTest\zssuretest\DICOM-Chinese>git remote -v
kuangbi-mnhwa   https://github.com/mnhwa/DICOM-Chinese.git (fetch)
kuangbi-mnhwa   https://github.com/mnhwa/DICOM-Chinese.git (push)
origin  https://github.com/zssure-test/DICOM-Chinese.git (fetch)
origin  https://github.com/zssure-test/DICOM-Chinese.git (push)
other   [email protected]-test:zssure-test/DICOM-Chinese (fetch)
other   [email protected]-test:zssure-test/DICOM-Chinese (push)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (fetch)
zssure-thu-origin       https://github.com/zssure-thu/DICOM-Chinese.git (push)

3. 下载他人仓库

F:\GitTest\zssuretest\DICOM-Chinese>git branch -v
* master bb0d864 Merge branch ‘master‘ of https://github.com/zssure-test/DICOM-Chinese

F:\GitTest\zssuretest\DICOM-Chinese>git fetch kuangbi-mnhwa
remote: Counting objects: 14, done.
remote: Total 14 (delta 0), reused 0 (delta 0), pack-reused 14
Unpacking objects: 100% (14/14), done.
From https://github.com/mnhwa/DICOM-Chinese
 * [new branch]      master     -> kuangbi-mnhwa/master
 * [new branch]      pr/1       -> kuangbi-mnhwa/pr/1

4. 导出他人仓库到新的分支

F:\GitTest\zssuretest\DICOM-Chinese>git checkout -b part5-kuangbi kuangbi-mnhwa/master
Branch part5-kuangbi set up to track remote branch master from kuangbi-mnhwa.
Switched to a new branch ‘part5-kuangbi‘

F:\GitTest\zssuretest\DICOM-Chinese>git branch -v
  master        bb0d864 Merge branch ‘master‘ of https://github.com/zssure-test/DICOM-Chinese
* part5-kuangbi 7c23aba 6.1.2.5----6.1.3

5. 合并他人仓库

F:\GitTest\zssuretest\DICOM-Chinese>git checkout master
Switched to branch ‘master‘
Your branch is up-to-date with ‘origin/master‘.

F:\GitTest\zssuretest\DICOM-Chinese>git branch -v
* master        bb0d864 Merge branch ‘master‘ of https://github.com/zssure-test/DICOM-Chinese
  part5-kuangbi 7c23aba 6.1.2.5----6.1.3

F:\GitTest\zssuretest\DICOM-Chinese>git merge part5-kuangbi
Merge made by the ‘recursive‘ strategy.
 Figure/Part 5/PS3.5_Table 6.1_1.jpg                | Bin 0 -> 131815 bytes
 ...t 5\357\274\232Data Structures and Encoding.md" | 353 +++++++++++++++++++++
 2 files changed, 353 insertions(+)
 create mode 100644 Figure/Part 5/PS3.5_Table 6.1_1.jpg
 create mode 100644 "Part 5\357\274\232Data Structures and Encoding.md"

6. 提交修改到github中心仓库

F:\GitTest\zssuretest\DICOM-Chinese>git status
On branch master
Your branch is ahead of ‘origin/master‘ by 5 commits.
  (use "git push" to publish your local commits)

nothing to commit, working directory clean

F:\GitTest\zssuretest\DICOM-Chinese>git push origin
Username for ‘https://github.com‘: zssure-test
Password for ‘https://[email protected]‘:
Counting objects: 19, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (16/16), 123.50 KiB | 0 bytes/s, done.
Total 16 (delta 6), reused 0 (delta 0)
To https://github.com/zssure-test/DICOM-Chinese.git
   bb0d864..63368d4  master -> master

F:\GitTest\zssuretest\DICOM-Chinese>

请求他人合并自己的Github仓库(Pull Requests on Github):

之前在系列博文DICOM:DICOM中文版开源书籍协同编辑之“Github Pull Requests”已经介绍过使用Github提供的Pull Requests来实现多人协同编辑的具体步骤,这里就不详细介绍了,大致说一下操作流程,具体示例请阅读之前的博文。

1. Fork他人仓库

2. 修改自己的仓库

git clone [email protected]:zssure-test/DICOM-Chinese.git
git config user.name "zssure-test"
git config user.email "[email protected]"
git config --local
#此处任意修改README.md的内容
git status #查看修改状态
git add . #添加所有修改
git commit -m "zssure git bash test" #提交修改到本地仓库
git push origin master #push修改到github

3. 使用Github中的Pull Requests发出合并请求

4. 等待别人审核后合并完成

在Github的主页上能够看到各成员合并的流程和结果:

备注:

上面提到的合并他人仓库,用于自己主动将他人的修改合并到自己的仓库中;请求他人合并自己的修改,用于将自己的修改同步给组内其他人员,主要是用于将自己的修改提价到一个公共的仓库中,作为最终的发版库。

通过上述两种基本可以完成多人协作工作,当然在具体应用过程中还会遇到回滚冲突撤销等问题,后续会继续给出实际应用过程中的示例。

作者:[email protected]

时间:2015-10-10

版权声明:本文为zssure原创文章,转载请注明出处,未经允许不得转载。

时间: 2024-11-08 19:18:39

DICOM:DICOM3.0标准中文版开源书籍编辑之”github仓库合并“的相关文章

DICOM:DICOM中文版开源书籍协同编辑之“Github Pull Requests”

背景: 博文专栏中介绍过DICOM标准中文版书籍的协作模式DICOM:开源书籍之『DICOM标准中文版』启动计划,之所以选择看云平台目的是希望更多的.各行各业的人员加入,例如英语专业.非医疗从业者都十分欢迎,对翻译中的语法.语言表述,甚至专业知识点进行评判修改. 对于日常工作很少使用版本管理工具的人员来说,看云的操作既简捷明了,又能很好的实现多人协作的目的.当然,如果您是一名IT从业者,已熟练使用SVN和GIT各种版本工具的人员,可以通过Github直接发起Pull requests请求,待审核

DICOM医学图像处理:全面分析DICOM3.0标准中的通讯服务模块

背景: 最近在做关于PACS终端与RIS系统之间进行worklist查询的相关调试工作,因此又重新对DICOM3.0标准中关于网络传输的部分进行了阅读,在此将本周的工作进行一下总结,以加深对DICOM3.0标准的认识,从底层更加清晰的了解worklist查询.C-STORE.C-FIND等各种服务. 要点: 1)名词简称 该部分中会出现很多的常见名词的缩写,因此为了更好的理解其含义,先给出各个名词所对应的全称,这里没有用中文进行翻译原因有二,其一是因为英文很简单,而且表意很清楚,其二是因为目前D

OpenACC2.0标准中文版

OpenACC2.0标准中文版下载地址,请移步这里 昨天晚上睡前突然想到这茬,然后又从网盘里找出自己翻译的版本,上传至CSDN上. 自己应该是2012年2~3月份开始接触的OpenACC,其实自己在看OpenACC1.0标准时就想过去翻译,可是在学校每天可干的事情太多了,自己也就想想而已.所以OpenACC1.0标准中文版的作者是小小河. 2013年5月份,2.0标准正式发布.2013年6月下旬的样子,私底下问过小小河,他还继续翻译不.当时他的答复是事情多,不翻译了. 小小河不翻译,那我就上吧,

DICOM:开源DICOM书籍之“git版本库合并”

背景: 之前翻译的DICOM3.0标准是在本地创建的git仓库,并非在github上创建,此时别人是无法访问的,当初的目的是想待标准翻译初步完成后再提交到github上. 然而由于本地的翻译工作采用MarkDownPad进行编辑,文档中的图片需要有一个公网URL才能在文档中显示(注:马克飞象工具是可以直接将剪切板中的图像插入到MarkDown文档致中的,目前马克飞象已经出了Windows和IOS的客户端,下载),因此就在Github上创建了DICOM-Chinese的仓库,并在其中创建了Figu

DICOM:DICOM3.0网络通信协议

转载:http://blog.csdn.net/zssureqh/article/details/41016091 背景: 专栏取名为DICOM医学图像处理原因是:博主是从医学图像处理算法研究时开始接触DICOM协议的.当初认识有局限性,认为DICOM只是一个简单的文件格式约定,简而言之,我当时认为DICOM协议就是扩展名为DCM文件的格式说明.其实不然,随着对医疗行业的深入,对DICOM协议也有了更全面的认识.而今才发现DCM文件只是DICOM协议一部分中的一小节,仅仅是整个协议中的一个数据结

DICOM:DICOM3.0网络通信协议(续)

题记: 近一年来一直坚持周末写博客,整理工作和闲暇之余的点点滴滴.对于新知识点.新技术的涉猎会单独成文,对于与DICOM相关的知识统一放在了DICOM医学图像处理 专栏里,其实DICOM英文全称是Digital Imaging and Communications in Medicine,即医学数字成像和通信.这就表明DICOM标准至少应该分成图像处理和网路通信两大部分.之前也探讨过专栏名称 的问题,总而言之由于历史原因和自身懒惰一直没有抽出精力再开一个专栏,暂且如此吧.虽然没有重新开专栏,但是

关于《Unity3D/2D游戏开发从0到1》书籍再版说明

关于<Unity3D/2D游戏开发从0到1>第一版本在2015年7月1日全国发行,累计得到不少国内高校教师.培训机构的好评.但是由于Unity官方对于技术不断的升级与版本的快速迭代,基于Unity4.6版本的教学知识体系,则略显滞后.    随着2017年7月份,Unity2017.1正式版本的推出,<Unity3D/2D游戏开发从0到1>书籍的再版,则正式提上日程. 目前2017年8月份再版工作已经进行过半,现在给各位小伙伴汇报一下工作,希望得到更好的建议.现在说说第二版本的总体

支付宝钱包接口开发包2.0标准版接入与使用规则

接入与使用规则 支付宝钱包支付接口开发包 2.0 标准版 附录文档 版本号:1.3 支付宝(中国)网络技术有限公司 版权所有 支付宝钱包支付接口开发包 2.0 标准版附录文档 目录 1 文档说明..............................................................................................................4 1.1 文档说明...............................

MidiEditor(MIDI音乐制作软件)下载 v2.5.0绿色中文版

MidiEditor是一款好用的MIDI音乐制作软件,专为喜欢作曲.编曲的朋友打造,软件界面直观,可以轻松进行音乐的创作.乐谱的打印.节目编排.音乐的调整.音响的幅度.节奏的速度.各声部之间的协调等操作,同时MidiEditor中文版还拥有虚拟电子和五线谱转简谱的功能. MidiEditor(MIDI音乐制作软件)下载 v2.5.0绿色中文版下载MidiEditor绿色中文版获取地址 MidiEditor(MIDI音乐制作软件)下载 v2.5.0绿色中文介绍:MidiEditor是一个免费的MI