all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Achim Gratz <Stromeko@nexgo.de>
To: emacs-devel@gnu.org
Subject: Re: A simple git workflow for the rest of us
Date: Sat, 15 Nov 2014 18:39:03 +0100	[thread overview]
Message-ID: <87sihkicso.fsf@Rainer.invalid> (raw)
In-Reply-To: m38ujcmomg.fsf@stories.gnus.org

Lars Magne Ingebrigtsen writes:
> Then we want to clone the repository.  We normally want to have both
> the current trunk and the emacs-24 branch.

Trunk is now known as master.

> git clone <membername>@git.sv.gnu.org:/srv/git/emacs.git

Better to do the clone either with git: or http: public access and leave
the ssh credentials strictly for pushing to upstream.  You do this by
adding a section like this to your global git config (you could add it
to the repo config, but that doesn#t make much sense if you're having
multiple clones around):

[url "git+ssh://<membername>@git.sv.gnu.org/srv/git/emacs.git"]
        pushInsteadOf = git://git.sv.gnu.org/emacs.git

That should help the server load a bit.

> mv emacs trunk

If you're going to rename the directory, you'd be better off just
telling git clone what you want it to be named:

git clone -b master git://git.sv.gnu.org/emacs.git master

> ./trunk/admin/git-new-workdir

This doesn't exist and whether or not git-workdir or even separate
working trees is what you'll want is debatable.  Personally I just
switch branches and build out-of-tree, but for something as large as
Emac I can see the utility of having separate workdirs.  If the
directories are side-by side anyway, then

git clone -b emacs-24 --reference emacs git://git.sv.gnu.org/emacs.git emacs-24

is just as good.

> 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

When working with upstream this is good practrice, but if you're going
to do that anyway, just configure your branch with "rebase = true".  Or
configure "autosetuprebase = true" on a repo-wide or global basis so Git
will do that by default (you can always change that later of course).

> cd ~/emacs/emacs-24
> git cherry-pick 958b768a6534ae6e77a8547a56fc31b46b63710b
> git commit --amend

Oh please, use the --edit / -e option and save yourself the trouble of
having to amend.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Factory and User Sound Singles for Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#WaldorfSounds




  parent reply	other threads:[~2014-11-15 17:39 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-15 16:09 A simple git workflow for the rest of us Lars Magne Ingebrigtsen
2014-11-15 16:38 ` Eli Zaretskii
2014-11-15 17:08   ` Lars Magne Ingebrigtsen
2014-11-16  2:57     ` Ted Zlatanov
2014-11-15 17:43   ` Achim Gratz
2014-11-15 18:04     ` Eli Zaretskii
2014-11-15 17:39 ` Achim Gratz [this message]
2014-11-15 17:47   ` Lars Magne Ingebrigtsen
2014-11-15 19:47     ` Karl Fogel
2014-11-16 19:05     ` Bill Wohler
2014-11-22  9:23     ` Steinar Bang
2014-11-22 13:35       ` Lars Magne Ingebrigtsen
2014-11-22 15:00         ` Steinar Bang
2014-11-22 15:26           ` Lars Magne Ingebrigtsen
2014-11-15 18:17   ` Andreas Schwab
2014-11-15 20:20   ` Kelvin White
2014-11-15 20:54     ` Kelvin White
2014-11-16 19:33   ` Bill Wohler
2014-11-16 19:43     ` Lars Magne Ingebrigtsen
2014-11-16 20:12       ` Ted Zlatanov
2014-11-16 20:19     ` Eli Zaretskii
2014-11-22  9:29     ` Steinar Bang
2014-11-23 18:28       ` Bill Wohler
2014-11-24 15:25         ` Sergey Organov
2014-11-15 19:08 ` Lars Magne Ingebrigtsen
2014-11-15 19:46   ` Andreas Schwab
2014-11-16 14:13     ` Lars Magne Ingebrigtsen
2014-11-16 14:34       ` David Engster
2014-11-16 14:42         ` Lars Magne Ingebrigtsen
2014-11-16 14:50           ` David Engster
2014-11-16 14:54             ` Lars Magne Ingebrigtsen
2014-11-16 15:19             ` David Kastrup
2014-11-16 14:36       ` Achim Gratz
2014-11-16  2:15 ` Glenn Morris

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87sihkicso.fsf@Rainer.invalid \
    --to=stromeko@nexgo.de \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.