From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Miles Bader Newsgroups: gmane.emacs.devel Subject: Re: What a modern collaboration toolkit looks like Date: Thu, 03 Jan 2008 19:16:57 +0900 Message-ID: <87fxxfnrhi.fsf@catnip.gol.com> References: <20071230122217.3CA84830B9A@snark.thyrsus.com> <20071231130712.GB8641@thyrsus.com> <87y7b96az8.fsf@member.fsf.org> Reply-To: Miles Bader NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1199355738 6371 80.91.229.12 (3 Jan 2008 10:22:18 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 3 Jan 2008 10:22:18 +0000 (UTC) Cc: Tassilo Horn , emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 03 11:22:38 2008 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1JANDb-0007zV-Ty for ged-emacs-devel@m.gmane.org; Thu, 03 Jan 2008 11:22:32 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JANDF-00030E-FT for ged-emacs-devel@m.gmane.org; Thu, 03 Jan 2008 05:22:09 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JAN8R-0006pW-HS for emacs-devel@gnu.org; Thu, 03 Jan 2008 05:17:11 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JAN8Q-0006oi-9z for emacs-devel@gnu.org; Thu, 03 Jan 2008 05:17:10 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JAN8P-0006oL-UR for emacs-devel@gnu.org; Thu, 03 Jan 2008 05:17:10 -0500 Original-Received: from smtp02.dentaku.gol.com ([203.216.5.72]) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JAN8I-00060Q-G7; Thu, 03 Jan 2008 05:17:02 -0500 Original-Received: from 203-216-100-219.dsl.gol.ne.jp ([203.216.100.219] helo=catnip.gol.com) by smtp02.dentaku.gol.com with esmtpa (Dentaku) id 1JAN8F-0003t4-Sy; Thu, 03 Jan 2008 19:16:59 +0900 Original-Received: by catnip.gol.com (Postfix, from userid 1000) id 6A8362FF7; Thu, 3 Jan 2008 19:16:57 +0900 (JST) System-Type: i686-pc-linux-gnu In-Reply-To: (Richard Stallman's message of "Thu, 03 Jan 2008 04:50:53 -0500") Original-Lines: 33 X-Abuse-Complaints: abuse@gol.com X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:85988 Archived-At: Richard Stallman writes: > I am having trouble understanding what it _means_ to say that you can > do a "commit" into your own repository. That must be something very > different from a "commit" in CVS terms. Perhaps it is so different that > the two are not comparable at all. Basically, in git (and many other systems), _every working directory_ contains its own repository, stored in the ".git" subdirectory. .git contains the entire history of the project, which is why you can examine log entries and old versions without being connected; it is highly compressed so for instance in the case of Emacs, .git takes only a little more space than the source tree itself. When you commit using "git commit", you're committing to the .git subdirectory. So "git commit" means "WD changes -> .git", a local operation. Git then contains commands to merge between repositories (either "pushing" or "pulling" to/from another repository). You can push or pull to remote repositories as well as local ones (a remote repository, might be like "ssh://git.sv.gnu.org/srv/git/emacs.git", whereas local repository is simply another git working directory [containing it's own .git subdir]). So perhaps you hack all day, periodically making commits (using "git commit") which store your changes into the .git subdir. Then when you later connect to the net, you can merge the new changes in .git into the remote emacs repository on savannah (using "git push"). -Miles -- Suburbia: where they tear out the trees and then name streets after them.