[Bioc-devel] Git svn mirror: Duplicated commit entries (introduced by git svn rebase?)
Henrik Bengtsson
henrik.bengtsson at gmail.com
Fri Feb 19 22:16:09 CET 2016
Hi.
I've got https://github.com/HenrikBengtsson/aroma.light which I've
successfully used for years to sync to Biconductor SVN via the
BiocGitHub bridge. All the time I've had the `master` branch synced
to Bioc. (I've also had my own `develop` branch to which I made all
the commits which I then merged in to `master`).
Next, I'm following the instruction in Section 'Scenario 2: Set Up
Your Own GitHub Repository' on
https://www.bioconductor.org/developers/how-to/git-mirrors/. However,
I end up with duplicated commit entries. For example, I fork
https://github.com/HenrikBengtsson/aroma.light to
https://github.com/hb-slash/aroma.light and do the following:
n6{henrik}: curl -O
https://raw.githubusercontent.com/Bioconductor/mirror/master/update_remotes.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3303 100 3303 0 0 13741 0 --:--:-- --:--:-- --:--:-- 18350
n6{henrik}: git clone https://github.com/hb-slash/aroma.light.git
Cloning into 'aroma.light'...
remote: Counting objects: 1936, done.
remote: Compressing objects: 100% (670/670), done.
remote: Total 1936 (delta 1263), reused 1928 (delta 1256), pack-reused 0
Receiving objects: 100% (1936/1936), 813.83 KiB | 1.04 MiB/s, done.
Resolving deltas: 100% (1263/1263), done.
Checking connectivity... done.
n6{henrik}: cd aroma.light
n6{henrik}: git status
On branch master
Your branch is up-to-date with 'origin/master'.
nothing to commit, working directory clean
n6{henrik}: bash ../update_remotes.sh
Commit to git as normal, when you want to push your commits to svn
1. `git checkout devel` to switch to the devel branch. (use release-X.X for
release branches)
2. `git svn rebase` to get the latest SVN changes.
3. `git merge master --log` to merge your changes from the master branch
or skip this step and work directly on the current branch.
4. `git svn dcommit --add-author-from` to sync and commit
your changes to svn.
n6{henrik}: pwd
/home/henrik/ghf/aroma.light
n6{henrik}: git br
devel
* master
release-3.0
release-3.1
release-3.2
n6{henrik}: git checkout devel
Switched to branch 'devel'
Your branch is up-to-date with 'bioc/master'.
n6{henrik}: git svn rebase
Migrating from a git-svn v1 layout...
Data from a previous version of git-svn exists, but
.git/svn
(required for this version (2.1.3) of git-svn) does not exist.
Done migrating from a git-svn v1 layout
Rebuilding .git/svn/refs/remotes/git-svn-devel/.rev_map.bc3139a8-67e5-0310-9ffc-ced21a209358
...
r18895 = 143ee9ee3f234d83b56e32db0b0b8d4383f2a61d
r18903 = 5ef8bcd18515a2ef2de90d165ea831797380dd9d
r18904 = 9c5d176667c453079e571a224b7609f51033a1a9
[... (in total 193 of these lines) ...]
r109270 = 1cfcf8f2d257c6a2a90d9292b93a6863e3aabf51
r109589 = 0c24adb439efd2f30e45e8927e4bcbde0273f320
r109592 = dc91cede48ea7d60263e452304e035622497a25b
r109897 = 496182c760cbac378f98b374008d5273d48b5ec9
r112254 = 44cd054eb4115d6955cd918b84f382bca41a7839
r113262 = 81f338b4f7d6825786f917f9e712889db20f66f2
Done rebuilding
.git/svn/refs/remotes/git-svn-devel/.rev_map.bc3139a8-67e5-0310-9ffc-ced21a209358
Current branch devel is up to date.
n6{henrik}: git status
On branch devel
Your branch is up-to-date with 'bioc/master'.
n6{henrik}: git checkout master
Switched to branch 'master'
Your branch is up-to-date with 'origin/master'.
n6{henrik}: git merge -X theirs devel
Auto-merging tests/normalizeFragmentLength-ex2.R
Merge made by the 'recursive' strategy.
tests/normalizeFragmentLength-ex2.R | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
n6{henrik}: git status
On branch master
Your branch is ahead of 'origin/master' by 194 commits.
(use "git push" to publish your local commits)
nothing to commit, working directory clean
Note that this single merge now makes local master to be **194**
commits ahead of origin/master. This looks like 193 + 1 where 193
corresponds to those 193 "tweaks" introduced by `git svn rebase`.
I did a `git push --all` after the above, so you can see the
repository online at https://github.com/hb-slash/aroma.light/. For
instance, there are lots of the commits are now duplicated, where one
show my original commit message the other the "Git-SVN bridge"
message, e.g.
"Updated NEWS to reflect new Bioc releases.":
https://github.com/hb-slash/aroma.light/commit/32e70c12bd9b6ea106128a1db466a13aebcf88a6
"Commit made by the Bioconductor Git-SVN bridge. ...":
https://github.com/hb-slash/aroma.light/commit/a0ee1399c24d36b96d5f737907228e250b5ffcba
Note that the code changes are identical, but based on different parents.
Any suggestions? Are the actions for `git svn rebase` expected?
Thanks
Henrik
More information about the Bioc-devel
mailing list