Google Code 与 Github同步
由于Golang中文翻译项目同时采用Google Code和Github两种方式管理,这里简单的记录一下流程.
1. 从Google Code代码库里面取得历史数据
border@colinux:~/work/golang-china$ git svn clone https://golang-china.googlecode.com/svn/trunk .
border@colinux:~/work/golang-china$ git branch -a
* master
remotes/git-svn
2. 增加Github源
border@colinux:~/work/golang-china$ git remote add github git@github.com:border/golang-china.git
同步github
border@colinux:~/work/golang-china$ git fetch github
remote: Counting objects: 37, done.
remote: Compressing objects: 100% (27/27), done.
remote: Total 30 (delta 14), reused 13 (delta 3)
Unpacking objects: 100% (30/30), done.
From github.com:border/golang-china
* [new branch] master -> github/master
border@colinux:~/work/golang-china$ git branch -a
* master
remotes/git-svn
remotes/github/master
border@colinux:~/work/golang-china$ git branch -r
git-svn
github/master
给github的源创建一个单独的分支
border@colinux:~/work/golang-china$ git checkout -b github github/master
Branch github set up to track remote branch master from github.
Switched to a new branch ‘github’
border@colinux:~/work/golang-china$ git branch
* github
master
border@colinux:~/work/golang-china$ git branch -a
* github
master
remotes/git-svn
remotes/github/master
border@colinux:~/work/golang-china$ git status
# On branch master
nothing to commit (working directory clean)
border@colinux:~/work/golang-china$ git branch
github
* master
3. 在master分支基础之上创建一个自己的分支用于与GoogleCode和Github进行合并
border@colinux:~/work/golang-china$ git checkout -b border
Switched to a new branch ‘border’
查看当前多有得分支
border@colinux:~/work/golang-china$ git branch -a
* border
github
master
remotes/git-svn
remotes/github/master
现在可以在border分支上与github合并
border@colinux:~/work/golang-china$ git merger github
解决一些冲突后,然后border分支目前是最新的版本。
接下来分别切换到master和github分支,并与border进行合并。
border@colinux:~/work/golang-china$ git checkout master
border@colinux:~/work/golang-china$ git merger border
在master分支下,提交相关的版本
border@colinux:~/work/golang-china$ git svn dcommit // 上传本地的代码到Google Code
border@colinux:~/work/golang-china$ git checkout github
border@colinux:~/work/golang-china$ git merger border
border@colinux:~/work/golang-china$ git push
git svn rebase // 本地与Goolge Code 代码同步
git svn dcommit // 上传本地的代码到Google Code
1. git-remote(1) Manual Page http://www.kernel.org/pub/software/scm/git/docs/git-remote.html
2. Google Code 与 Github代码同步 http://wifihack.net/blog/2010/01/google-code-svn-and-github-sync/
3. 混合使用Git SVN 和Git http://zoomquiet.org/res/scrapbook/ZqFLOSS/data/20081212152336/index.html
![[Google]]( http://wifihack.net/blog/wp-content/plugins/easy-adsense-lite/google-light.gif)
Recent Comments