From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Kelvin White Newsgroups: gmane.emacs.devel Subject: Re: A simple git workflow for the rest of us Date: Sat, 15 Nov 2014 15:20:45 -0500 Message-ID: References: <87sihkicso.fsf@Rainer.invalid> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/alternative; boundary=089e013d202af4bd8c0507eb7a9b X-Trace: ger.gmane.org 1416082879 9449 80.91.229.3 (15 Nov 2014 20:21:19 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 15 Nov 2014 20:21:19 +0000 (UTC) Cc: Emacs development discussions To: Achim Gratz Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Nov 15 21:21:14 2014 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1XpjqK-0002d9-1W for ged-emacs-devel@m.gmane.org; Sat, 15 Nov 2014 21:21:12 +0100 Original-Received: from localhost ([::1]:41888 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XpjqJ-0004x1-Ku for ged-emacs-devel@m.gmane.org; Sat, 15 Nov 2014 15:21:11 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:53987) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xpjpw-0004vk-2Z for emacs-devel@gnu.org; Sat, 15 Nov 2014 15:20:49 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Xpjpu-0005u7-2p for emacs-devel@gnu.org; Sat, 15 Nov 2014 15:20:48 -0500 Original-Received: from mail-wg0-x22a.google.com ([2a00:1450:400c:c00::22a]:60949) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Xpjpt-0005tx-OI for emacs-devel@gnu.org; Sat, 15 Nov 2014 15:20:46 -0500 Original-Received: by mail-wg0-f42.google.com with SMTP id z12so3799203wgg.29 for ; Sat, 15 Nov 2014 12:20:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=2frhzN8y8AwzJqyNz0qzuT/q9oA/GUKyWdP+WQEzMs4=; b=F2bdoKDpuKNcijm1OKPDkxDccWkkeLXzNGTxzMQZRnjX7UQ1Xzr4EE1WqcXbOzw4Ii J9QQYRlURegDzJOLX65QGMehxOJvLjzEKdfe1k0o8dvgn1SDDedUmpRjQ38PirYv2gXc XwihC0bPY2lCpAVv1BdWqiMioWbJIAhfNlxuZMMZXkLYRpFVpIWwf7WwB/eXSmx6yyTV KlZrVslWD6W0HLwQynBAAkLUk7rB438GuS/N4WxH5j9EBZDEpETLiKNrVC7/IaiUO+cR NVaDv7DU9kQlYuY66QxsTQjVu00XnUBE8a2P0c0VZYRrKbyBpR9QYqmp9cO8fQOR/u0L Z/sg== X-Received: by 10.194.248.195 with SMTP id yo3mr25133401wjc.60.1416082845120; Sat, 15 Nov 2014 12:20:45 -0800 (PST) Original-Received: by 10.27.215.135 with HTTP; Sat, 15 Nov 2014 12:20:45 -0800 (PST) In-Reply-To: <87sihkicso.fsf@Rainer.invalid> X-Google-Sender-Auth: acbjMyFISRYUL0wQ2WE8V45dIRg X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2a00:1450:400c:c00::22a X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:177248 Archived-At: --089e013d202af4bd8c0507eb7a9b Content-Type: text/plain; charset=UTF-8 Achim Gratz wrote: > 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 @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://@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 why not just... git clone @git.sv.gnu.org/emacs.git trunk that's if you still want to refer to it as trunk and not master without renaming the branch to... wait, why are you proposing to rename the branch to master with -b when it's master by default? >> ./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-new-workdir is part of git/contrib which falls under the same GPL, correct? If so, no harm in copying it for distribution AFAIK. > 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). This does no good in feature branches, so you should always `bzr update' first ...or in this case `git pull --rebase'. am I missing something here? --089e013d202af4bd8c0507eb7a9b Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable


Achim Gratz <Stromeko@nexgo.de> wrote:
> Lars Magne Ingebrigtsen writes:=
>> Then we want to clone the repository.=C2=A0 We normally want t= o have both
>> the current trunk and the emacs-24 branch.
><= br>> Trunk is now known as master.
>
>> git clone <mem= bername>@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.=C2=A0 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 hav= ing
> multiple clones around):
>
> [url "git+ssh://&= lt;membername>@git.s= v.gnu.org/srv/git/emacs.git"]
> =C2=A0 =C2=A0 =C2=A0 =C2=A0 = pushInsteadOf =3D git://git.sv.= gnu.org/emacs.git
>
> That should help the server load a bi= t.
>
>> mv emacs trunk
>
> If you're going t= o rename the directory, you'd be better off just
> telling git cl= one what you want it to be named:
>
> git clone -b master git:/= /git.sv.gnu.org/emacs.git m= aster

why not just...

git clone <membern= ame>@git.sv.gnu.org/emacs.gi= t trunk

that's if you still want to refer to it a= s trunk and not master
without renaming the branch to... wait, why are y= ou proposing to
rename the branch to master with -b when it's= master by default?=C2=A0

>> ./trunk/admin/g= it-new-workdir
>
> This doesn't exist and whether or not gi= t-workdir or even separate
> working trees is what you'll want is= debatable.=C2=A0 Personally I just
> switch branches and build out-o= f-tree, but for something as large as
> Emac I can see the utility of= having separate workdirs.=C2=A0 If the
> directories are side-by sid= e anyway, then

git-new-workdir is part of git/contrib which falls un= der the same GPL, correct?
If so, no harm in copying it for distr= ibution AFAIK.

--089e013d202af4bd8c0507eb7a9b--