emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] [emacs] 01/01: Add a draft of a very simple git workflow


From: Lars Ingebrigtsen
Subject: [Emacs-diffs] [emacs] 01/01: Add a draft of a very simple git workflow
Date: Sat, 15 Nov 2014 16:06:41 +0000

larsi pushed a commit to branch master
in repository emacs.

commit 788bc73c80bcd1e748a389692963c1464ba963df
Author: Lars Magne Ingebrigtsen <address@hidden>
Date:   Sat Nov 15 17:06:34 2014 +0100

    Add a draft of a very simple git workflow
---
 admin/notes/git-workflow |   73 ++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 73 insertions(+), 0 deletions(-)

diff --git a/admin/notes/git-workflow b/admin/notes/git-workflow
new file mode 100644
index 0000000..4bda3f5
--- /dev/null
+++ b/admin/notes/git-workflow
@@ -0,0 +1,73 @@
+(This is a draft.  The method here won't actually work yet, because
+neither git-new-workdir nor merge-changelog are in the Emacs
+distribution yet.)
+
+Setting up and using git for normal, simple bugfixing
+=====================================================
+
+If you haven't configured git before you should first do:
+
+git config --global user.name "Frank Chu"
+git config --global user.email "address@hidden"
+
+Initial setup
+=============
+
+Then we want to clone the repository.  We normally want to have both
+the current trunk and the emacs-24 branch.
+
+mkdir ~/emacs
+cd ~/emacs
+git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git
+mv emacs trunk
+./trunk/admin/git-new-workdir trunk emacs-24
+cd emacs-24
+git checkout emacs-24
+
+You now have both branches conveniently accessible, and you can do
+"git pull" in them once in a while to keep updated.
+
+
+Fixing bugs
+===========
+
+You edit the files in either branch, `M-x vc-dir', and check in your
+changes.  Then you need to push the data to the main repository.  This
+will usually fail, since somebody else has pushed other changes in the
+meantime.  To fix this, say
+
+git pull --rebase
+
+which will update your repository, and then re-apply your changes on
+top of that.  Then say
+
+git push
+
+
+Backporting to emacs-24
+=======================
+
+If you have applied a fix to the trunk, but then decide that it should
+be applied to the emacs-24 branch, too, then
+
+cd ~/emacs/trunk
+git log
+
+and find the commit you're looking for.  Then find the commit ID,
+which will look like
+
+commit 958b768a6534ae6e77a8547a56fc31b46b63710b
+
+cd ~/emacs/emacs-24
+git cherry-pick 958b768a6534ae6e77a8547a56fc31b46b63710b
+git commit --amend
+
+and add "Backport:" to the commit string.  Then
+
+git push
+
+
+Merging emacs-24 to trunk
+=========================
+
+This has yet to be written.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]