snapshot 2006-04-14
parent
c1a4066f67
commit
f8ab671134
2
Doit
2
Doit
|
|
@ -8,7 +8,7 @@ test -z "$(git diff --cached --name-status)" || {
|
|||
}
|
||||
Meta/Make clean >/dev/null 2>&1
|
||||
|
||||
branches='next master maint'
|
||||
: ${branches='next master pu'}
|
||||
|
||||
nstall=install
|
||||
for branch in $branches
|
||||
|
|
|
|||
|
|
@ -0,0 +1,42 @@
|
|||
#!/bin/sh
|
||||
|
||||
master_sha1=`git rev-parse --verify refs/heads/master`
|
||||
LF='
|
||||
'
|
||||
(cd .git/refs/heads && find -type f) |
|
||||
sed -n \
|
||||
-e 's/^\.\///' \
|
||||
-e '/^[^\/][^\/]\//p' |
|
||||
while read topic
|
||||
do
|
||||
rebase= done= not_done= trouble= date=
|
||||
topic_sha1=`git rev-parse --verify "refs/heads/$topic"`
|
||||
|
||||
date=`
|
||||
git-rev-list -1 --pretty "$topic" |
|
||||
sed -ne 's/^Date: *\(.*\)/ (\1)/p'
|
||||
`
|
||||
only_next_1=`git-rev-list ^master "^$topic" next | sort`
|
||||
only_next_2=`git-rev-list ^master next | sort`
|
||||
rebase=
|
||||
if test "$only_next_1" = "$only_next_2"
|
||||
then
|
||||
not_in_topic=`git-rev-list "^$topic" master`
|
||||
if test -z "$not_in_topic"
|
||||
then
|
||||
:; # already up-to-date.
|
||||
else
|
||||
rebase=" (can be rebased)"
|
||||
fi
|
||||
fi
|
||||
if test -n "$rebase"
|
||||
then
|
||||
echo "Rebasing $topic to pick up:"
|
||||
git-rev-list --pretty=oneline "^$topic" master |
|
||||
sed -e 's/^[0-9a-f]* / * /'
|
||||
git checkout "$topic" &&
|
||||
git rebase master || break;
|
||||
fi
|
||||
done
|
||||
|
||||
|
||||
78
TODO
78
TODO
|
|
@ -17,45 +17,23 @@ if ever -- only if somebody cares enough and submits a clean
|
|||
patch, perhaps ;-).
|
||||
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
* No pending issues at the moment. "Revamp Tutorial" initiative
|
||||
by Bruce Fields ongoing and things are looking better.
|
||||
|
||||
|
||||
UI
|
||||
--
|
||||
|
||||
* Make "git branch -d foo" while on foo branch suggest "maybe
|
||||
you want to go back to 'master'?"
|
||||
|
||||
* Error message from "git checkout -b bar v2.6.10" should assume
|
||||
v2.6.10 is an attempt to switch to a new branch based on
|
||||
mistyped tag, not an attempt to revert path v2.6.10 from the
|
||||
HEAD commit with extra "make and switch to this branch"
|
||||
argument.
|
||||
|
||||
* "git commit [-i|-o] paths..." with misspelled paths would be
|
||||
silently ignored. Add a flag to ls-files to catch unmatched
|
||||
pathspec to prevent this.
|
||||
|
||||
|
||||
Design issues
|
||||
-------------
|
||||
|
||||
* Rehash "git commit" with various parameters to be more
|
||||
intuitive without breaking traditinal users too much. We need
|
||||
to phase this in, especially if we are going to change "git
|
||||
commit" to imply the current "git commit -a" behaviour.
|
||||
|
||||
* "intent to add" index entries.
|
||||
* "intent to add" index entries?
|
||||
|
||||
* Plug-in file-level merges. On the other hand, we may not even
|
||||
need this; just tell people to run "xxdiff -U" on the working
|
||||
tree files.
|
||||
|
||||
* Doing a merge in a separate directory.
|
||||
* Doing a merge in a separate directory?
|
||||
|
||||
* Make 'format-patch' take revision limiters similar to
|
||||
rev-list. For example:
|
||||
|
|
@ -101,17 +79,14 @@ Technical (heavier)
|
|||
|
||||
This needs a matching smart on the dumb protocol downloader.
|
||||
|
||||
* Maybe an Emacs VC backend.
|
||||
|
||||
* Look at libified GNU diff CVS seems to use, or libxdiff.
|
||||
[Daniel has his own diff tool almost ready to start
|
||||
integrating and testing]
|
||||
|
||||
|
||||
Technical (milder)
|
||||
------------------
|
||||
|
||||
* "git status -v" to give commit preview.
|
||||
* Shallow clones.
|
||||
|
||||
* Encourage competition between annotate vs blame. Maybe come
|
||||
up with some nontrivial test cases.
|
||||
|
||||
* Subprojects. I think the "bind commit" approach has been
|
||||
outlined at sufficiently detailed level. Maybe find time to
|
||||
|
|
@ -119,34 +94,6 @@ Technical (milder)
|
|||
|
||||
<7vacdzkww3.fsf@assigned-by-dhcp.cox.net>
|
||||
|
||||
* Shallow clones.
|
||||
|
||||
* Mark entries as "assume unchanged" in the index.
|
||||
|
||||
<Pine.LNX.4.64.0601311807470.7301@g5.osdl.org>
|
||||
|
||||
A config item '[core] trust_stat = false' would cause to:
|
||||
|
||||
- "update-index" with or without --add would mark the path
|
||||
valid after registering. Should we make the working tree
|
||||
file read-only at this point?
|
||||
|
||||
- checkout-index -u would mark the path and makes the working
|
||||
tree file read-only.
|
||||
|
||||
- read-tree without -u would mark the path invalid.
|
||||
|
||||
- update-index --refresh should *not* mark up-to-date paths valid.
|
||||
|
||||
Impacts to various commands:
|
||||
|
||||
- update-index --refresh would ignore them.
|
||||
|
||||
- diff-files would say unchanged.
|
||||
|
||||
- diff-index without --cached acts the same way as diff-index
|
||||
--cached.
|
||||
|
||||
* Decide what to do about rebase applied to merged head. One
|
||||
extreme is to allow rebase if "rev-list ours..theirs" gives
|
||||
anything. This loosens the current merge-base based approach.
|
||||
|
|
@ -164,8 +111,6 @@ Technical (milder)
|
|||
|
||||
<20060114021800.4688.qmail@web31803.mail.mud.yahoo.com>
|
||||
|
||||
* Perhaps a smarter HTTP anonymous download via CGI.
|
||||
|
||||
* diff stopping at the first output; qgit wants to know if this
|
||||
tree has any A or D from the other tree and nothing else.
|
||||
Would help internal tree-diff in rev-list as well.
|
||||
|
|
@ -179,22 +124,11 @@ Technical (milder)
|
|||
* Perhaps detect cloning request in upload-pack and cache the
|
||||
result for next cloning request until any of our refs change.
|
||||
|
||||
* Perhaps accept patch to optionally allow '--fuzz' in
|
||||
'git-apply'. am/applymbox is _not_ the place to do it.
|
||||
|
||||
* Allow 'git apply' to accept GNU diff 2.7 output that forgets
|
||||
to say '\No newline' if both input ends with incomplete
|
||||
lines.
|
||||
|
||||
* Perhaps deal with "Files differ" (binary diff) in non C
|
||||
locales.
|
||||
|
||||
* Maybe grok PGP signed text/plain in applymbox as well.
|
||||
|
||||
* Output full path in the "git-rev-list --objects" output, not
|
||||
just the basename, and see the improved clustering results in
|
||||
better packing [Tried, but did not work out well].
|
||||
|
||||
|
||||
Technical (trivial)
|
||||
-------------------
|
||||
|
|
|
|||
13
WI
13
WI
|
|
@ -1,11 +1,14 @@
|
|||
#!/bin/sh
|
||||
# Prepare "What's in git.git"
|
||||
|
||||
master_at=$(git rev-parse --verify refs/heads/master)
|
||||
|
||||
echo "To: git@vger.kernel.org"
|
||||
echo "Subject: What's in git.git"
|
||||
echo "X-master-at: $master_at"
|
||||
|
||||
tagged=`git rev-parse --not --verify tags/sa/master`
|
||||
list=`git-rev-list $tagged heads/master 2>/dev/null`
|
||||
list=`git-rev-list $tagged refs/heads/master 2>/dev/null`
|
||||
if test -n "$list"
|
||||
then
|
||||
echo
|
||||
|
|
@ -14,22 +17,22 @@ then
|
|||
git log $tagged heads/master | git shortlog
|
||||
fi
|
||||
|
||||
list=`git-rev-list heads/master..heads/next 2>/dev/null`
|
||||
list=`git-rev-list refs/heads/master..refs/heads/next 2>/dev/null`
|
||||
if test -n "$list"
|
||||
then
|
||||
echo
|
||||
echo
|
||||
echo "* The 'next' branch, in addition, has these."
|
||||
echo
|
||||
git log --no-merges heads/master..heads/next | git shortlog
|
||||
git log --no-merges refs/heads/master..refs/heads/next | git shortlog
|
||||
fi
|
||||
|
||||
list=`git-rev-list ^heads/master ^heads/next heads/pu 2>/dev/null`
|
||||
list=`git-rev-list ^refs/heads/master ^refs/heads/next refs/heads/pu 2>/dev/null`
|
||||
if test -n "$list"
|
||||
then
|
||||
echo
|
||||
echo
|
||||
echo "* The 'pu' branch, in addition, has these."
|
||||
echo
|
||||
git log --no-merges ^heads/master ^heads/next heads/pu | git shortlog
|
||||
git log --no-merges ^refs/heads/master ^refs/heads/next refs/heads/pu | git shortlog
|
||||
fi
|
||||
|
|
|
|||
Loading…
Reference in New Issue