Commit f8bf1b35 authored by Paul Eggert's avatar Paul Eggert

CONTRIBUTE cleanups and updates

* CONTRIBUTE: Mention URLs and info nodes more consistently,
avoiding possibly-confusing punctuation adjacent to a URL, and
giving full shell commands for 'info'.  Start with a brief but
complete how-to, for people who want to get started right away.
Then briefly discuss how to join the development process in the
typical order.  Omit needless words.  Update some of the
now-obsolete file names, info node names, and quoting styles.
Better document emacs-NN branches and how they are merged.
* admin/notes/git-workflow: Change emacs-24 to emacs-25,
and trunk to master.  This file still needs work.
parent f3aaca35
This diff is collapsed.
......@@ -19,17 +19,15 @@ Initial setup
=============
Then we want to clone the repository. We normally want to have both
the current trunk and the emacs-24 branch.
the current master and the emacs-25 branch.
mkdir ~/emacs
cd ~/emacs
git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git
mv emacs trunk
(cd trunk; git config push.default current)
./trunk/admin/git-new-workdir trunk emacs-24
cd emacs-24
git checkout emacs-24
git config push.default current
git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git master
(cd master; git config push.default current)
./master/admin/git-new-workdir master emacs-25
cd emacs-25
git checkout emacs-25
You now have both branches conveniently accessible, and you can do
"git pull" in them once in a while to keep updated.
......@@ -59,13 +57,13 @@ you commit your change locally and then send a patch file as a bug report
as described in ../../CONTRIBUTE.
Backporting to emacs-24
Backporting to emacs-25
=======================
If you have applied a fix to the trunk, but then decide that it should
be applied to the emacs-24 branch, too, then
If you have applied a fix to the master, but then decide that it should
be applied to the emacs-25 branch, too, then
cd ~/emacs/trunk
cd ~/emacs/master
git log
and find the commit you're looking for. Then find the commit ID,
......@@ -73,7 +71,7 @@ which will look like
commit 958b768a6534ae6e77a8547a56fc31b46b63710b
cd ~/emacs/emacs-24
cd ~/emacs/emacs-25
git cherry-pick -xe 958b768a6534ae6e77a8547a56fc31b46b63710b
and add "Backport:" to the commit string. Then
......@@ -81,17 +79,17 @@ and add "Backport:" to the commit string. Then
git push
Merging emacs-24 to trunk/master
================================
Merging emacs-25 to the master
==============================
It is recommended to use the file gitmerge.el in the admin directory
for merging 'emacs-24' into 'master'. It will take care of many
for merging 'emacs-25' into 'master'. It will take care of many
things which would otherwise have to be done manually, like ignoring
commits that should not land in master, fixing up ChangeLogs and
automatically dealing with certain types of conflicts. If you really
want to, you can do the merge manually, but then you're on your own.
If you still choose to do that, make absolutely sure that you *always*
use the 'merge' command to transport commits from 'emacs-24' to
use the 'merge' command to transport commits from 'emacs-25' to
'master'. *Never* use 'cherry-pick'! If you don't know why, then you
shouldn't manually do the merge in the first place; just use
gitmerge.el instead.
......@@ -104,11 +102,11 @@ up-to-date by doing a pull. Then start Emacs with
emacs -l admin/gitmerge.el -f gitmerge
You'll be asked for the branch to merge, which will default to
'origin/emacs-24', which you should accept. Merging a local tracking
'origin/emacs-25', which you should accept. Merging a local tracking
branch is discouraged, since it might not be up-to-date, or worse,
contain commits from you which are not yet pushed upstream.
You will now see the list of commits from 'emacs-24' which are not yet
You will now see the list of commits from 'emacs-25' which are not yet
merged to 'master'. You might also see commits that are already
marked for "skipping", which means that they will be merged with a
different merge strategy ('ours'), which will effectively ignore the
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment