| From | Subject | Date |
|---|---|---|
| Johannes Schindelin | GSoC podcast 18: Git
Hi list,
you might be interested in listening to Leslie Hawthorn interviewing Git's
GSoC administrator (Shawn) and his lazy bum^Wbackup administrator (yours
truly).
I haven't seen it being mentioned on the official blog, but after waiting
for over an hour, I figured I could just send the direct link:
http://google-developer-podcast.googlecode.com/files/gsocpodcast018.ogg
Enjoy,
Dscho
--
| Jul 16, 7:35 pm 2008 |
| Alex Chiang | [PATCH] guilt(1): fix path to git-sh-setup
git is in the process of moving subcommands to /usr/libexec/git-core
This move breaks an assumption in guilt about the location of
git-sh-setup.
We can ask git for where it thinks its executables live.
Signed-off-by: Alex Chiang <achiang@hp.com>
---
diff --git a/guilt b/guilt
index 50414a4..ba4593a 100755
--- a/guilt
+++ b/guilt
@@ -23,7 +23,7 @@ esac
# we change directories ourselves
SUBDIRECTORY_OK=1
-. git-sh-setup
+. `git --exec-path`/git-sh-setup
#
# Git version ...
| Jul 16, 7:23 pm 2008 |
| Junio C Hamano | Re: Considering teaching plumbing to users harmful
Looks good, except:
if git diff ....; then
git pull "$@"
else
git stash && git pull "$@" && git stash pop
fi
to make sure the conflict notices won't be scrolled off by error messages
from the later commands.
--
| Jul 16, 6:41 pm 2008 |
| Torsten Paul | gitk: Author/Committer name with special characters
Hi!
I'm tracking a subversion repository which is running on
a windows machine with git-svn. The user names look like
DOMAIN\username and that's giving a strange display in
gitk as the backslash sequence is evaluated.
I'm not sure if I found the correct place to prevent this,
so I'd like to ask if the following change would be the
correct thing to prepare as patch...
ciao,
Torsten.
diff --git a/gitk-git/gitk b/gitk-git/gitk
index fddcb45..f114fa2 100644
--- a/gitk-git/gitk
+++ b/gi...
| Jul 16, 6:24 pm 2008 |
| Paul Mackerras | Re: gitk: Author/Committer name with special characters
Something like that, I think, but to be sure I'd like to see the
actual author and committer lines that are causing the problem. Could
you send me the output of "git cat-file commit" on one of the
problematic commits?
Thanks,
Paul.
--
| Jul 16, 7:55 pm 2008 |
| Jukka Zitting | git-svn: Trouble after project has moved in svn
Hi,
Somewhat related to the recent thread about Apache Synapse, I'm having
trouble making a git-svn clone of a project that has been moved around
in a Subversion repository.
See the script at the end of this message for a simple test case that
does the following svn commits:
PREPARE: creates projectA with the standard trunk,branches,tags structure
VERSION1: first version of README.txt in projectA/trunk
TAG1: tags projectA/trunk to projectA/tags/v1
MOVE: moves projectA to proje...
| Jul 16, 6:12 pm 2008 |
| Stephan Beyer | [PATCH 1/3] Add git-sequencer shell prototype
git-sequencer is planned as a backend for user scripts
that execute a sequence of git instructions and perhaps
need manual intervention, for example git-rebase or git-am.
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
---
.gitignore | 1 +
Makefile | 1 +
command-list.txt | 1 +
git-sequencer.sh | 2064 +++++++++++++++++++++++++++++++++++++++++++++...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | [PATCH 2/3] Add git-sequencer documentation
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
---
Documentation/git-sequencer.txt | 673 +++++++++++++++++++++++++++++++++++++++
1 files changed, 673 insertions(+), 0 deletions(-)
create mode 100644 Documentation/git-sequencer.txt
diff --git a/Documentation/git-sequencer.txt b/Documentation/git-sequencer.txt
new file mode 100644
index 0000000..8a701c4
--- /dev/null
...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | [PATCH 3/3] Add git-sequencer test suite (t3350)
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
---
t/t3350-sequencer.sh | 838 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 838 insertions(+), 0 deletions(-)
create mode 100755 t/t3350-sequencer.sh
diff --git a/t/t3350-sequencer.sh b/t/t3350-sequencer.sh
new file mode 100755
index 0000000..3cc7da8
--- /dev/null
+++ b/t/t3350-sequencer.sh
@@ -0...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | Sequencer migration patches
Hi,
the following patches migrate git-am and git-rebase--interactive to
git-sequencer.
But there are some issues I want to mention.
I've compared performance of original rebase and am with the
sequencer-based ones and the sequencer-based ones perform fairly bad.
For example, applying 45 patches with git-am took 3 seconds using the
original and 8 seconds using the sequencer-based one.
Rebasing 100 commits takes 10.1 seconds instead of only 4.8 seconds
on my test machine.
I expect that the b...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | [PATCH 1/2] Migrate git-am to use git-sequencer
In principle a migration to git-sequencer is straightforward:
Put all the mail from the mbox or Maildir into .git/rebase and
let the "patch" instruction of sequencer do the rest of the
work.
The git am --interactive part is a little more tricky.
To get this working, "pause" instructions are put after every
"patch" instruction and then be_interactive() swoops in,
that allows the user to input his choice.
Also a slight behavior change, that can be seen in the diff of
the test cases, should be men...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | [PATCH 2/2] Introduce git am --abort
Currently, aborting a git-am process during a conflict is done by
resetting to the HEAD before applying the patches and removing the
.git/rebase directory manually.
This patch introduces an --abort option for git-am to make this as
easy as in git-rebase.
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
---
Documentation/git-am.txt | 5 ++++-
Documentati...
| Jul 16, 4:45 pm 2008 |
| Stephan Beyer | [PATCH] Migrate rebase-i to sequencer
The migration of pure rebase-i to sequencer is simply done by
generating the todo list, but with a comment marker (`#')
before the description, and then feed it to git sequencer.
For git-rebase-i -p (preserving merges) merges should be
rewritten. For this, the sequencer instructions "mark", "merge"
and "reset" are used.
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Mentored-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
---...
| Jul 16, 4:45 pm 2008 |
| Alexander Gavrilov | [PATCH (GIT-GUI) 0/3] Improve gui blame usability for large ...
Full copy detection can take quite some time on large repositories, which
substantially decreases perceived usability of the 'git gui blame' command.
This set of patches tries to overcome it by:
1) Allowing the user to disable '-C -C' and/or set the detection threshold.
2) Explicitly killing back-end processes, which don't produce any output
during copy detection, and thus normally won't receive SIGPIPE until
it is finished. Runaway processes are annoying.
3) To compensate for (1), adding a...
| Jul 16, 4:42 pm 2008 |
| Alexander Gavrilov | [PATCH (GIT-GUI) 1/3] Add options to control the search for ...
On huge repositories, -C -C can be way too slow to be
unconditionally enabled, and it can also be useful to control
its precision.
Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
---
git-gui.sh | 2 ++
lib/blame.tcl | 20 ++++++++++++--------
lib/option.tcl | 2 ++
3 files changed, 16 insertions(+), 8 deletions(-)
diff --git a/git-gui.sh b/git-gui.sh
index e3b6669..b1ed0ec 100755
--- a/git-gui.sh
+++ b/git-gui.sh
@@ -642,6 +642,8 @@ set default_config(user.email...
| Jul 16, 4:43 pm 2008 |
| Alexander Gavrilov | [PATCH (GIT-GUI) 2/3] Kill the blame back-end on window close.
Currently 'git-gui blame' does not kill its back-end
process, hoping that it will die anyway when the pipe
is closed. However, in some cases the process works
for a long time without producing any output. This
behavior results in a runaway CPU hog.
Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
---
The -f flag is necessary for msysgit.
For this fix I submitted to msysgit a patch that includes
a Cygwin-compatible kill.exe in the installer.
-- Alexander
git-gui.sh ...
| Jul 16, 4:48 pm 2008 |
| Alexander Gavrilov | [PATCH (GIT-GUI) 3/3] Add a menu item to invoke full copy de...
Add a context menu item to invoke blame -C -C -C on a chunk
of the file. The results are used to update the 'original
location' column of the blame display.
The chunk is computed as the smallest line range that covers
both the 'last change' and 'original location' ranges of the
line that was clicked to open the menu.
Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
---
This is my most complex Tcl/Tk code so far, so I might have
done some stupid things.
-- Alexander
lib...
| Jul 16, 4:51 pm 2008 |
| Alexander Gavrilov | [PATCH (GIT-GUI)] Fix pre-commit hooks under MinGW/MSYS
Apply the work-around for checking the executable
permission of hook files not only on Cygwin, but on
Windows in general.
Signed-off-by: Alexander Gavrilov <angavrilov@gmail.com>
---
This is a fix for msysgit issue #118.
(http://code.google.com/p/msysgit/issues/detail?id=118)
I've already sent this patch, but resend it as I haven't received any reply,
and it is not in git-gui.git yet.
-- Alexander
git-gui.sh | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff...
| Jul 16, 4:12 pm 2008 |
| Karl | [StGit PATCH] Add some performance testing scripts
find_patchbomb.py: Given a git repo, finds the longest linear sequence
of commits. Useful for testing StGit on a real repository.
setup.sh: Creates two test repositories, one synthetic and one based
on the Linux kernel repo, with strategically placed tags.
create_synthetic_repo.py: Helper script for setup.sh; it produces
output that is to be fed to git fast-import.
perftest.py: Runs one of a (small) number of hard-coded performance
tests against a copy of one of the repos created by set...
| Jul 16, 3:35 pm 2008 |
| Avery Pennarun | [PATCH] Reformat "your branch has diverged..." lines to redu...
The message length depends on the length of the branch name. In my case,
the branch name "origin/add-chickens2" put the first line of the "your
branch has diverged" message over 80 characters, which triggered "less -FS"
to not exit automatically as expected.
This patch puts the newlines in slightly different places to reduce the
probability of this happening. Now you'd need a significantly longer
branch name to trigger the problem.
Signed-off-by: Avery Pennarun <apenwarr@gmail.com>
---
...
| Jul 16, 3:19 pm 2008 |
| Junio C Hamano | Re: [PATCH] Reformat "your branch has diverged..." lines to ...
I wonder if a simple "s/of the tracked%s branch //" is better for this
kind of thing. If the message says 'origin/master', you know it is a
tracked remote branch anyway, don't you?
Too wide is bad, but too tall is worse. Some of us still work in 80x24
;-) and I prefer to make the message succinct when possible, rather than
This does not make the message taller, but if we were to make the "only
one side advanced" cases shorter, we would need to reword this to be
consistent. Perhaps something ...
| Jul 16, 3:48 pm 2008 |
| Avery Pennarun | Re: [PATCH] Reformat "your branch has diverged..." lines to ...
Personally, I would be fine with shorter messages; this doesn't seem
the best time to
report the name of the tracked branch anyhow. I use 80x24 terminals
too most of the time.
However, I didn't write the original patch either, and I recall that
this feature was so popular that it actually resulted in a list thread
Well, the fact that the number of commits is "variable" isn't so
important, unless you start diverging by 1e9 commits or something :)
It might be nice to minimize the amount of stat...
| Jul 16, 4:27 pm 2008 |
| Junio C Hamano | Re: [PATCH] Reformat "your branch has diverged..." lines to ...
No, no, no. The point is not about keeping it on screen when "less -S"
chops at the right end. The point is to limit eye-movement of the user;
i.e. presenting important information consistently at around the same
column, closer to the left edge. Probably the line break should be before
I do not think it is such a good idea --- we invite silly comments like
It is very much more "consensus building" than "approval", and at this
point we wait for a day or two to see if people come up with even b...
| Jul 16, 6:03 pm 2008 |
| Petr Baudis | [RFC][PATCH 0/7] Submodule support in git mv, git rm
The following series implements submodule support in git mv and git rm,
plus enhancing the submodules testsuite a bit. I'd appreciate comments,
especially on the git mv change, since the index_path_src_sha1 is
really a horrible hack.
The pinnacle of this series was supposed to be merge-recursive support
for submodule-somethingelese conflicts, however that seems a bit more
complicated than I expected, so I decided to first send the rest for
a review.
---
Petr Baudis (7):
t7403: Submodul...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 7/7] t7403: Submodule git mv, git rm testsuite
The testsuite for newly added submodule support in git mv, git rm.
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
t/t7403-submodule-mvrm.sh | 242 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 242 insertions(+), 0 deletions(-)
create mode 100755 t/t7403-submodule-mvrm.sh
diff --git a/t/t7403-submodule-mvrm.sh b/t/t7403-submodule-mvrm.sh
new file mode 100755
index 0000000..9b50d6a
--- /dev/null
+++ b/t/t7403-submodule-mvrm.sh
@@ -0,0 +1,242 @@
+#!/bin/sh
+#
+# Co...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 6/7] git rm: Support for removing submodules
This patch adds support for removing submodules to 'git rm', including
removing the appropriate sections from the .gitmodules file to reflect this
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
Documentation/git-rm.txt | 6 +++-
builtin-rm.c | 65 ++++++++++++++++++++++++++++++++++++++--------
2 files changed, 58 insertions(+), 13 deletions(-)
diff --git a/Documentation/git-rm.txt b/Documentation/git-rm.txt
index 4d0c495..bfc3dfa 100644
--- a/Documentation/git-rm.txt
...
| Jul 16, 3:11 pm 2008 |
| Johannes Schindelin | Re: [PATCH 6/7] git rm: Support for removing submodules
Hi,
I have no time to look at the whole series, or even at the patch, but I
have concerns. Do you really remove the whole directory? Because if you
do, you remove more than what can be possibly reconstructed from the
object store.
That is much more dangerous than what "git rm" does.
For example, you can have local branches, remote settings, untracked
files, etc. in the subdirectory. And that cannot be recovered once
deleted.
I wonder if it really makes sense to integrate that into...
| Jul 16, 6:41 pm 2008 |
| Petr Baudis | [PATCH 4/7] submodule.*: Introduce simple C interface for su...
The interface will be used for git-mv and git-rm submodule support.
So far, only the submodule_by_path() function is defined, however more
can be probably expected in the future if/when the git-submodule command
is ported from shell.
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
Makefile | 2 ++
submodule.c | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++
submodule.h | 8 ++++++++
3 files changed, 60 insertions(+), 0 deletions(-)
create mode 100644 submodule.c
cre...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 5/7] git mv: Support moving submodules
This patch adds support for moving submodules to 'git mv', including
rewriting of the .gitmodules file to reflect the movement.
The usage of struct path_list here is a bit abusive, but keeps the
code simple and hopefully still reasonably readable. The horrid
index_path_src_sha1 hack is unfortunately much worse, however the author
is currently unaware of any more reasonable solution of the problem.
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
builtin-mv.c | 55 +++++++++++++++++++++++...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 3/7] git submodule add: Fix naming clash handling
This patch fixes git submodule add behaviour when we add submodule
living at a same path as logical name of existing submodule. This
can happen e.g. in case the user git mv's the previous submodule away
and then git submodule add's another under the same name.
A test-case is obviously included.
This is not completely satisfactory since .git/config cross-commit
conflicts can still occur. A question is whether this is worth
handling, maybe it would be worth adding some kind of randomization
of the...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 2/7] t7400: Add short "git submodule add" testsuite
This patch introduces basic tests for
git submodule add
covering the basic functionality and the -b parameter.
A trivial update --init test fix freeloads on this commit as well.
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
t/t7400-submodule-basic.sh | 28 +++++++++++++++++++++++++++-
1 files changed, 27 insertions(+), 1 deletions(-)
diff --git a/t/t7400-submodule-basic.sh b/t/t7400-submodule-basic.sh
index 6c7b902..ab5eb1e 100755
--- a/t/t7400-submodule-basic.sh
+++ b/t/t7...
| Jul 16, 3:11 pm 2008 |
| Petr Baudis | [PATCH 1/7] git-mv: Remove dead code branch
The path list builder had a branch for the case the source is not in index, but
this can happen only if the source was a directory. However, in that case we
have already expanded the list to the directory contents and set mode
to WORKING_DIRECTORY, which is tested earlier.
The patch removes the superfluous branch and adds an assert() instead. git-mv
testsuite still passes.
Signed-off-by: Petr Baudis <pasky@suse.cz>
---
builtin-mv.c | 16 +++++++---------
1 files changed, 7 insertions...
| Jul 16, 3:11 pm 2008 |
| Ciaran McCreesh | [PATCH,RFC] Implement 'git rm --if-missing'
git rm --if-missing will only remove files if they've already been removed from
disk.
Signed-off-by: Ciaran McCreesh <ciaran.mccreesh@googlemail.com>
---
There's nothing here that can't be done using git update-index, but git rm
is less scary.
Regarding exit status: I'm not sure whether exit status should be based upon
whether any files were actually removed, or whether it should be based upon
whether or not all of the supplied patterns were matched. I've gone for the
latter, so that 'g...
| Jul 16, 2:00 pm 2008 |
| Junio C Hamano | Re: [PATCH,RFC] Implement 'git rm --if-missing'
This probably is a borderline with feaping creaturism. What's the use of
it in a real workflow that you need this for?
"git add -u" may be too broad in that it also adds anything modified, but
so is --if-missing too broad in that it removes anything removed, and if
you are going to limit by giving pathspecs _anyway_, then...
Old timers might just do:
git diff --name-only --diff-filter=D |
git update-index --remove --stdin
Not your fault in entirety, but we should drop these " =...
| Jul 16, 2:48 pm 2008 |
| Peter Baumann | Re: [PATCH,RFC] Implement 'git rm --if-missing'
Ah. This comes in handy. I already searched for a command to delete all
missing files. After reading through the fine manual of 'git rm', I went
to git update-index but didn't come up with a solution to my problem.
But I have to say, an argument to 'git rm' would be preferable than the
above plumping.
-Peter
--
| Jul 16, 2:58 pm 2008 |
| David Christensen | Re: [PATCH,RFC] Implement 'git rm --if-missing'
Wouldn't:
git rm $(git ls-files --deleted)
do the trick, or am I missing something?
Regards,
David
--
David Christensen
End Point Corporation
david@endpoint.com
--
| Jul 16, 3:43 pm 2008 |
| Petr Baudis | Re: [PATCH,RFC] Implement 'git rm --if-missing'
Hi,
what is the usage scenario? The porcelain options space is a precious
resource, so please explain why do you need this and who is going to use
it (especially with such a long name).
Petr "Pasky" Baudis
--
| Jul 16, 2:06 pm 2008 |
| Avery Pennarun | Re: [PATCH,RFC] Implement 'git rm --if-missing'
I see the idea here: right now you can do:
touch a b c
git add .
And have it auto-add all the new files, so "git commit" will work.
But there is no equivalent for rm, because for obvious reasons,
rm b c
git rm .
Doesn't do the same thing. And "git add ." doesn't auto-recognize
deletions, which probably also makes sense.
"git commit -a", on the other hand, will automatically commit all
deletions for you. But you don't always want to commit *all* your
...
| Jul 16, 2:17 pm 2008 |
| Chris Cowan | Hacks for AIX
I saw some earlier postings about this, so I thought I would share my
solution (I'm using xlc, BTW). The following tests were broken for
me (using a pull from 2 days ago).
* t0002-gitfile.sh
* t1002-read-tree-m-u-2way.sh
* t2201-add-update-typechange.sh
* t4109-apply-multifrag.sh
* t4110-apply-scan.sh
* t7002-grep.sh
The problems all seem to be rooted in the default utilities shipped with AIX:
* /usr/bin/grep - behaves badly in t7002. I believe it is test
1...
| Jul 16, 1:57 pm 2008 |
| Linus Torvalds | Re: Hacks for AIX
The grep selection at compile time is purely a choice between "no external
grep at all" and "whatever external grep is in $PATH".
exec_grep() literally does
..
pid = fork();
if (pid < 0)
return pid;
if (!pid) {
execvp("grep", (char **) argv);
exit(255);
}
..
so you can choose your version of external grep at run-time by just
setting PATH appropriately.
Or you can just decide that you don't want to use any external grep binary
at all, which is the compile-time c...
| Jul 16, 2:26 pm 2008 |
| Junio C Hamano | Re: Hacks for AIX
Perhaps your version of AIX needs to...
A patch to the testsuite to replace use of "diff" and "diff -u" that test
the actual output matches expected output with "test_cmp" would be
t4109 seems to use patch to produce expected output for the tests; we
should ship a precomputed expected results. Do you know of any other
places "patch" is used?
--
| Jul 16, 2:25 pm 2008 |
| Johannes Schindelin | Considering teaching plumbing to users harmful
Hi,
there have been a number of occasions where I came across people trying to
be helpful and teaching Git newbies a few tricks.
However, in quite a number of cases, which seem to surge over the last
weeks, I see people suggesting the use of rev-parse, ls-tree, rev-list
etc.
Their rationale is invariably "but I found it useful", and they seem to be
unable to recognize the puzzlement in the faces of the people they are
trying to help.
Instead they insist that they did nothing wrong.
...
| Jul 16, 1:21 pm 2008 |
| Stephan Beyer | Re: Considering teaching plumbing to users harmful
Hi,
Johannes Schindelin wrote:
Basically I agree, but depending on the user's foreign SCM knowledge
it could be useful to talk about some basic "low-level" concepts of git
(without talking about the plumbing).
I mean:
- objects (commits, trees, blobs ... in very short)
- index
and perhaps
- refs (at least branches)
I was told that before I've seen a first git command and I still think
that was very useful.
Hmm, just recalling, my first git commands were:
1. init
2. add
3. stat...
| Jul 16, 6:09 pm 2008 |
| Johannes Schindelin | Re: Considering teaching plumbing to users harmful
Hi,
So you would say that remembering the name "rev-parse" is just as easy as
remembering "show"?
You want to say that --keep-dash-dash and --stat are on the same level,
since both work? Somehow I don't think so.
Ciao,
Dscho
--
| Jul 16, 7:22 pm 2008 |
| Dmitry Potapov | Re: Considering teaching plumbing to users harmful
Yes, it is a good list, and I think it is very important at the
beginning to limit the number commands to 7-8, otherwise many users
may be confused. And, of course, it is better to stay away from all
Most things that we call as "natural" is those that we got used. Once,
you got used to it, it seems very natural, and the index is not
something that is really difficult to learn, but I don't think that
everyone may understand it fully. Some may use Git for many months and
only then suddenly discover...
| Jul 16, 5:48 pm 2008 |
| Johannes Schindelin | Re: Considering teaching plumbing to users harmful
Hi,
In this case, I have to add that it is natural because it is the way you
_have_ to do it. Even if the other SCMs hide it.
You almost never commit a full revision. You usually update just a couple
of files. Now, even CVS has an extra command to add a file, so it accepts
the fact that staging and committing are two different operations, even if
"cvs add" does not stage the changes of a tracked file.
Of course, it is easier for us: we can use all the lessons learnt from
Heh. I ...
| Jul 16, 7:19 pm 2008 |
| Junio C Hamano | Re: Considering teaching plumbing to users harmful
I think that justification is harmful.
More productive way to think about it is to identify cases where we _need_
to go down to combination of the plumbing commands in our daily workflow,
with today's command set. That would give us a good indication that some
Porcelain may need to be enhanced.
An example. I find myself running "git read-tree -m -u $another_state"
while redoing a series inside a "rebase -i" session to move commit
boundaries. There may need an insn that says "use that tree" in...
| Jul 16, 4:51 pm 2008 |
| Johannes Schindelin | Re: Considering teaching plumbing to users harmful
Hi,
I agree that if you know Git internals -- and you and me do -- it comes in
_right_ handy to know the 100+ commands with many options by heart.
However, my point was about telling users, especially new ones.
For example, I would _never_ suggest the following workflow to a n00b
because it would be confusing:
$ tar xvf <xyz>
<try to compile>
<fix a compile error>
<fix other things>
<oh, I could contribute the fixes!>
$ git init
$ git remote add -...
| Jul 16, 7:05 pm 2008 |
| Junio C Hamano | Re: Considering teaching plumbing to users harmful
Perhaps you did not read my first paragraph?
--
| Jul 16, 7:40 pm 2008 |
| Jesper Eskilson | Re: Considering teaching plumbing to users harmful
Well, Git is not the easiest tool on the market to learn. For people
used to centralized systems such as RCS/CVS/Subversion, many concepts
are truly alien. I've recently experienced a transition at our company
from MKS/SI (a RCS derivative) to Subversion, and the mental gap was for
many users HUGE. Had we done the transition from MKS/SI to Git, I'm sure
several user's brains would have exploded.
From my perspective, the concept I found most difficult to grasp at the
very beginning was ho...
| Jul 16, 1:50 pm 2008 |
| previous day | today | next day |
|---|---|---|
| July 15, 2008 | July 16, 2008 | July 17, 2008 |
| Tarkan Erimer | Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3 |
| Greg Kroah-Hartman | [PATCH 001/196] Chinese: Add the known_regression URI to the HOWTO |
| Bart Van Assche | Integration of SCST in the mainstream Linux kernel |
| Heiko Carstens | Re: -mm merge plans for 2.6.23 -- sys_fallocate |
git: | |
| Gerrit Renker | [PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side) |
| Jarek Poplawski | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| David Miller | Re: [GIT]: Networking |
| Jarek Poplawski | [PATCH iproute2] Re: HTB accuracy for high speed |
