Open main menu

Changes

Git branch creation

2,857 bytes added, 11:51, 27 October 2017
Transclusion of the {{historical svn}} template.
{{historical svn}}
__TOC__
 
== Links ==
http://www.nmr-relax.com/manual/Branches.html
cp ../relax_trunk/relax_commit.txt .
git config --add commit.template "relax_commit.txt"
# And build
scons
# Make an executable to this.
ln -s $PWD/relax $HOME/bin/relax_${BRANCH}
#Now check out the svn branch, which we will keep to perform certain svn commands.
cd ${BRANCH}_svn
# Get the svnmerge script
curl http://svn.apache.org/repos/asf/subversion/trunk/contrib/client-side/svnmerge/svnmerge.py -o $HOME/bin/svnmerge.pychmod +x $HOME/bin/svnmerge.py
#Once you have this script, the merging from the main line to your private branch must be initialised by typing, from within the checked out copy of your branch
#This then needs to be committed using the automatically generated log
svn ci -F svnmerge-commit-message.txt
rm svnmerge-commit-message.txt
 
# See log
svn log -l 5
# To keep up to date, simply type
svnmerge.py avail
svnmerge.py merge
</source>
<source lang="bash">
svn ci -F svnmerge-commit-message.txt
</source> === BUG: svnmerge: no integration info available ===If you receive a message like: '''svnmerge: no integration info available'''.<br>Then you have probably run '''svnmerge.py''' before updating.Solution, run: '''svn revert .''' <source lang='bash'>> svnmerge.py avail23310-23312> svnmerge.py mergeproperty 'svnmerge-integrated' deleted from '.'. svnmerge: command execution failed (exit code: 1)svn --non-interactive merge --force -r 23309:23312 svn+ssh://XXXX@svn.gna.org/svn/relax/trunk .svn: E195020: Cannot merge into mixed-revision working copy [23304:23305]; try updating first > svn upUpdating '.':At revision 23312. > svnmerge.py mergesvnmerge: no integration info available > svn status M .? svnmerge-commit-message.txt > svn diffIndex: .===================================================================--- . (revision 23312)+++ . (working copy) Property changes on: .___________________________________________________________________Deleted: svnmerge-integrated## -1 +0,0 ##-/trunk:1-23304\ No newline at end of property > svn revert .Reverted '.' > svnmerge.py avail23310-23312 > svnmerge.py mergeproperty 'svnmerge-integrated' deleted from '.'. --- Merging r23310 through r23312 into '.':U test_suite/system_tests/relax_disp.pyU test_suite/system_tests/scripts/relax_disp/cpmg_synthetic.py property 'svnmerge-integrated' set on '.'</source> == Merging the branch back into the main line ==Once you have completed the modifications desired for your branch, all changes which have occurred in the main line have been merged using svnmerge.py, and the changes have been approved for merging back into the main line - then your branch can be merged. First check out a copy of the main line, <source lang="bash">svn co svn+ssh://$RUSER@svn.gna.org/svn/relax/trunk relax-trunk# or update a previously checked out version,svn up</source> Then svnmerge.py can be utilised again. First initialise the merging process by typing, from within the checked out copy of the main line,<source lang="bash">svnmerge.py init svn+ssh://$RUSER@svn.gna.org/svn/relax/branches/$BRANCH#Then commit the changesvn ci -F svnmerge-commit-message.txt</source> To merge the branch and commit the changes, type<source lang="bash">svnmerge.py merge -bidirectionalsvn ci -F svnmerge-commit-message.txt</source> Finally the merge properties need to be removed<source lang="bash">svnmerge.py uninit -S svn+ssh://$RUSER@svn.gna.org/svn/relax/branches/$BRANCH# the changes committedsvn ci -F svnmerge-commit-message.txt# and your private branch deletedsvn rm svn+ssh://$RUSER@svn.gna.org/svn/relax/branches/$BRANCH</source>
== See also ==
[[Category:git]]
Trusted, Bureaucrats
4,223

edits