Open main menu

Changes

Git branch creation

1,570 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"
# Make an executable to this.
ln -s relax $HOME/bin/relax_${BRANCH}
# 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 ==
# 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,
#Then commit the change
svn ci -F svnmerge-commit-message.txt
</source>
To merge the branch and commit the changes, type
svnmerge.py merge -bidirectional
svn ci -F svnmerge-commit-message.txt
</source>
Finally the merge properties need to be removed
# and your private branch deleted
svn rm svn+ssh://$RUSER@svn.gna.org/svn/relax/branches/$BRANCH
</source> 
== See also ==
[[Category:git]]
Trusted, Bureaucrats
4,228

edits