From: Catalin Marinas <catalin.marinas@gmail.com>
To: Petr Baudis <pasky@suse.cz>
Cc: Junio C Hamano <junkio@cox.net>,
Linus Torvalds <torvalds@osdl.org>,
git@vger.kernel.org, Bryan larsen <bryanlarsen@yahoo.com>,
Sam Ravnborg <sam@ravnborg.org>
Subject: Re: [PATCH 1/1] Tell vim the textwidth is 75.
Date: Sat, 23 Jul 2005 11:27:31 +0100 [thread overview]
Message-ID: <1122114452.6863.72.camel@localhost.localdomain> (raw)
In-Reply-To: <20050723093035.GB11814@pasky.ji.cz>
On Sat, 2005-07-23 at 11:30 +0200, Petr Baudis wrote:
> Dear diary, on Sat, Jul 23, 2005 at 10:41:38AM CEST, I got a letter
> where Catalin Marinas <catalin.marinas@gmail.com> told me that...
> > The problem appears when one upstream maintainer changes the
> > configuration, should this be merged again? In this case you can get
> > conflicts.
>
> So you resolve them...? If the upstream keeps doing changes frequent
> enough and large-scale enough to this becoming annoying, something is
> wrong. :-)
OK, that's fine with me (but see below).
> > That's OK with one issue - git should be able to exclude _git when
> > generating a diff between 2 trees, unless one can enforce the _git/*
> > files to be read-only.
>
> Why? I think those meta-information is important too, and if it differs,
> I want to see it in the diff. Oh, now I see what you mean - to
> optionally exclude it. That would be nice, having --exclude in
> common diff options.
That's useful when generating patches.
The other problem is that the upstream maintainer might not be
interested in my own settings but they would be pulled together with the
normal data.
> > Another option would be to have .git/info/<branch> and, with cogito for
> > example, .git/info/origin should always be pulled, even if the local
> > files were modified. You would override these settings
> > in .git/info/master. The problem is to define the branches order in
> > which the settings are read.
>
> Yes, and you may be pulling from multiple branches. I would keep
> .git/info simple and single-instanced. If you want your stuff to
> propagate to others, put it to .gitinfo/.
Yes, my idea complicates things quite a lot.
> > This could be avoided by using ini-like files (well, easy to read in
> > Python) and have [git] (for the common things like author name),
> > [cogito], [stgit] etc. sections.
>
> Now if it is going to look like this, I think separate files would be
> much more practical, more effective and likely simpler for the user as
> well. For Cogito-specific stuff, the user can well dive into
> Cogito-specific configuration files, I think. (Well, there's none now;
> there is .cgrc but that only contains default options for Cogito
> commands and will stay so; I plan ~/.cg/cogito.conf or something.
> Actually, perhaps the Git configuration file should be ~/.git/git.conf -
> it looks cool, doesn't it?)
Or we could have ~/.git/git.conf, ~/.git/cogito.conf and
~/.git/stgit.conf, under the same directory.
> > The problem is how much similar we want the Porcelains to be regarding
> > the settings and the templates. For StGIT, it is much simpler to have
> > something like '%(FILELIST)s' rather than '@FILELIST@' in a template but
> > I have not problem with switching to a common syntax. But we should see
> > what can easily be changed.
>
> I chose @FILELIST@ only since it is a common convention to have this as
> rewrite placeholders, and I think it's more visually clear than
> %(FILELIST). Were you insisting on the second syntax, I wouldn't have
> %any problem switching, though. Cogito does no @@ rewriting yet.
It's true that @...@ is a common convention and is much clearer. I chose
my syntax since it was easier to format the strings in Python. If we go
for a common template, I would prefer the @...@ one (and do a regexp
replace in Python instead of the string formatting).
> Agreed. What Cogito uses:
>
> .git/author Default author information in format
> Person Name <email@addy>
What about .git/committer? This is useful if I do a commit at work and I
want the repository to have my gmail address.
> .git/branch-name
> Symbolic name of the branch of this repository.
Isn't this the same as $(readlink .git/HEAD), with some trimming?
> .git/commit-template
> Commit template to use in the commit editor
> instead of some short header (most of it is
> still hardcoded).
OK
> .git/exclude --exclude-from for git-ls-files
> I want to rename this to .git/ignore
OK, either name is fine with me.
> .git/hooks/commit-post
> .git/hooks/merge-pre
> .git/hooks/merge-post
OK, though StGIT doesn't use any at the moment.
Now, the StGIT files (.git means $GIT_DIR):
* /etc/stgitrc, ~/.stgitrc, .git/stgitrc - configuration files
(the latter overrides the former). The syntax is similar to the
ini files
* .git/patches/ - directory containing the patch information. I
won't go into details here since this is only used by StGIT
* .git/exclude - for the files to be ignored by the 'status'
command
* .git/conflicts - includes the list of files conflicting after a
merge operation. The user should run 'stg resolved --all' to
mark the conflicts as resolved and remove this file
* .git/branches/ - the same meaning as in cogito, only that
'master' is considered a branch and 'stg pull' doesn't use
'origin'
* .git/patchdescr.tmpl - the same idea as commit-template, used
when creating the first description for a patch
* .git/patchexport.tmpl - template used when exporting the patches
in a series
* .git/patchmail.tmpl - template used for sending patches by
e-mail
--
Catalin
next prev parent reply other threads:[~2005-07-23 10:27 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-21 20:23 [PATCH 1/1] Tell vim the textwidth is 75 Bryan larsen
2005-07-22 2:50 ` Junio C Hamano
2005-07-22 10:37 ` Catalin Marinas
2005-07-22 19:24 ` Sam Ravnborg
2005-07-22 20:39 ` Junio C Hamano
2005-07-22 20:59 ` Petr Baudis
2005-07-24 22:49 ` [RFC] extending git-ls-files --exclude Junio C Hamano
2005-07-24 22:50 ` [PATCH] git-ls-files: --exclude mechanism updates Junio C Hamano
2005-07-24 22:51 ` [PATCH] Documentation: describe git-ls-files --exclude patterns Junio C Hamano
2005-07-25 9:19 ` [RFC] extending git-ls-files --exclude Catalin Marinas
2005-07-25 19:58 ` Junio C Hamano
2005-07-25 20:09 ` Linus Torvalds
2005-07-25 20:27 ` Junio C Hamano
2005-07-25 20:51 ` Catalin Marinas
2005-07-28 15:57 ` Petr Baudis
2005-07-25 20:59 ` Catalin Marinas
2005-07-28 15:52 ` Petr Baudis
2005-07-28 16:04 ` A Large Angry SCM
2005-07-28 19:25 ` Matthias Urlichs
2005-07-29 7:21 ` Petr Baudis
2005-07-29 7:37 ` Matthias Urlichs
2005-07-29 13:49 ` A Large Angry SCM
2005-07-29 5:04 ` Junio C Hamano
2005-07-29 7:36 ` Petr Baudis
2005-07-29 8:24 ` Junio C Hamano
2005-07-29 8:41 ` Petr Baudis
2005-08-01 16:14 ` Wayne Scott
2005-07-29 7:50 ` [PATCH] ls-files: rework exclude patterns Junio C Hamano
2005-07-29 7:51 ` [PATCH] Documentation and tests: ls-files exclude pattern Junio C Hamano
2005-07-22 21:43 ` [PATCH 1/1] Tell vim the textwidth is 75 Catalin Marinas
2005-07-22 23:07 ` Junio C Hamano
2005-07-23 8:41 ` Catalin Marinas
2005-07-23 9:30 ` Petr Baudis
2005-07-23 10:27 ` Catalin Marinas [this message]
2005-07-23 16:33 ` Bryan Larsen
2005-07-23 20:52 ` Catalin Marinas
2005-07-28 19:47 ` Petr Baudis
2005-07-29 2:24 ` Junio C Hamano
2005-07-29 2:59 ` Linus Torvalds
2005-07-29 9:55 ` Catalin Marinas
2005-07-29 11:10 ` Petr Baudis
2005-07-29 12:34 ` Catalin Marinas
2005-07-30 2:11 ` Junio C Hamano
2005-07-23 9:04 ` Petr Baudis
2005-07-24 1:13 ` Junio C Hamano
2005-07-22 21:00 ` Catalin Marinas
2005-07-22 20:41 ` Petr Baudis
2005-07-22 21:16 ` Junio C Hamano
2005-07-22 21:27 ` Petr Baudis
2005-07-22 23:24 ` Junio C Hamano
2005-07-22 23:50 ` Petr Baudis
2005-07-23 10:32 ` Catalin Marinas
2005-07-26 0:18 ` Updating diff-raw status letter to 'A' for added files Junio C Hamano
2005-07-26 0:20 ` [PATCH 1/2] Use symbolic constants for diff-raw status indicators Junio C Hamano
2005-07-26 0:21 ` [PATCH 2/2] diff-raw: Use 'A' instead of 'N' for added files Junio C Hamano
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=1122114452.6863.72.camel@localhost.localdomain \
--to=catalin.marinas@gmail.com \
--cc=bryanlarsen@yahoo.com \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
--cc=pasky@suse.cz \
--cc=sam@ravnborg.org \
--cc=torvalds@osdl.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.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).