From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.emacs.gnus.general/80507 Path: news.gmane.org!not-for-mail From: Steinar Bang Newsgroups: gmane.emacs.gnus.general Subject: Re: *bump* again Date: Fri, 04 Nov 2011 12:26:31 +0100 Organization: Probably a good idea Message-ID: References: <1318133487-45386-1-git-send-email-dave@boostpro.com> <82botobfzu.fsf@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1320406082 11454 80.91.229.12 (4 Nov 2011 11:28:02 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Fri, 4 Nov 2011 11:28:02 +0000 (UTC) To: ding@gnus.org Original-X-From: ding-owner+M28790@lists.math.uh.edu Fri Nov 04 12:27:58 2011 Return-path: Envelope-to: ding-account@gmane.org Original-Received: from util0.math.uh.edu ([129.7.128.18]) by lo.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1RMHwE-0003tc-8Z for ding-account@gmane.org; Fri, 04 Nov 2011 12:27:58 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.math.uh.edu) by util0.math.uh.edu with smtp (Exim 4.63) (envelope-from ) id 1RMHvT-0000sH-Ml; Fri, 04 Nov 2011 06:27:11 -0500 Original-Received: from mx2.math.uh.edu ([129.7.128.33]) by util0.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.63) (envelope-from ) id 1RMHvS-0000s4-CR for ding@lists.math.uh.edu; Fri, 04 Nov 2011 06:27:10 -0500 Original-Received: from quimby.gnus.org ([80.91.231.51]) by mx2.math.uh.edu with esmtps (TLSv1:AES256-SHA:256) (Exim 4.76) (envelope-from ) id 1RMHvQ-0000B9-7k for ding@lists.math.uh.edu; Fri, 04 Nov 2011 06:27:09 -0500 Original-Received: from lo.gmane.org ([80.91.229.12]) by quimby.gnus.org with esmtp (Exim 4.72) (envelope-from ) id 1RMHvM-0005ZN-UE for ding@gnus.org; Fri, 04 Nov 2011 12:27:04 +0100 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1RMHvL-0003Tp-AW for ding@gnus.org; Fri, 04 Nov 2011 12:27:03 +0100 Original-Received: from 62.113.137.5 ([62.113.137.5]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 04 Nov 2011 12:27:03 +0100 Original-Received: from sb by 62.113.137.5 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 04 Nov 2011 12:27:03 +0100 X-Injected-Via-Gmane: http://gmane.org/ Mail-Followup-To: ding@gnus.org Original-Lines: 45 Original-X-Complaints-To: usenet@dough.gmane.org X-Gmane-NNTP-Posting-Host: 62.113.137.5 Mail-Copies-To: never User-Agent: Gnus/5.110018 (No Gnus v0.18) Emacs/22.3 (gnu/linux) Cancel-Lock: sha1:eRzE7v597qLFq6+/FAJc7MgmXOU= X-Spam-Score: -4.9 (----) List-ID: Precedence: bulk Xref: news.gmane.org gmane.emacs.gnus.general:80507 Archived-At: >>>>> Steinar Bang : > Note to Lars: having separate branches and merging between them is > _much_ less of a hazzle than in traditional version control tools (CVS, > subversion, perforce). I know this by first hand experience. Command for initially creating a branch, assuming that you're currently on master, and have no unpushed commits: git checkout master git checkout -b experimental git push origin HEAD To work on that branch, just git fetch git checkout experimental (push and pull and branch and merge as if on master) > The development branch should be frequently merged with master, though. > Maybe a bot could do it, with notifications to a human operator when it > gets conflicts? To update the experimental branch with current master, do git checkout experimental git pull git merge origin/master git push origin HEAD If you get conflicts you need to resolve them before you can push. Personally I also always build cleanly, and at least smoke test, before I push. However, as long as you don't get conflicts you're usually good (though I _have_ seen examples of the opposite). Basically, the more fine grained people commit, the better merge will work. Git is really quite clever about branching and merging. To read about it, read the "branching" chapter of the "Pro Git" book: http://progit.org/book/ch3-0.html To eventually merge in the experimental branch into master, do: git checkout master git pull git merge origin/experimental git push origin HEAD