aboutsummaryrefslogtreecommitdiff
path: root/show-branch.c
Commit message (Collapse)AuthorAge
* show-branch: optionally use unique prefix as name.Junio C Hamano2005-10-11
| | | | | | | | | | git-show-branch acquires two new options. --sha1-name to name commits using the unique prefix of their object names, and --no-name to not to show names at all. This was outlined in <7vk6gpyuyr.fsf@assigned-by-dhcp.cox.net> Signed-off-by: Junio C Hamano <junkio@cox.net>
* Add git-symbolic-refJunio C Hamano2005-10-01
| | | | | | | | | | | | | This adds the counterpart of git-update-ref that lets you read and create "symbolic refs". By default it uses a symbolic link to represent ".git/HEAD -> refs/heads/master", but it can be compiled to use the textfile symbolic ref. The places that did 'readlink .git/HEAD' and 'ln -s refs/heads/blah .git/HEAD' have been converted to use new git-symbolic-ref command, so that they can deal with either implementation. Signed-off-by: Junio C Hamano <junio@twinsun.com>
* show-branch: fix commit naming breakage.Junio C Hamano2005-09-24
| | | | | | | | It was ignoring the generation number of the commit when naming 2nd and later parents, showing "(linus^n)^2" for any <n> incorrectly as "linus^2". Signed-off-by: Junio C Hamano <junkio@cox.net>
* show-branch: Be nicer when running in a corrupt repository.Junio C Hamano2005-09-19
| | | | | | | | | We may end up trying to print a commit we do not actually have but we know about its existence only because another commit we do have refers to it. Signed-off-by: Junio C Hamano <junkio@cox.net> (cherry picked from b204feab9371040982d2c60611925e7693106c84 commit)
* Fix 'git-show-branch --list <head>'Junio C Hamano2005-09-10
| | | | | | It mistakenly failed to output anything when given a single head. Signed-off-by: Junio C Hamano <junkio@cox.net>
* show-branch: --list and --independentJunio C Hamano2005-09-09
| | | | | | | | | | The --list option is what 'git branch' without parameter should have been; it shows the one-line commit message for each branch name. The --independent option is used to filter out commits that can be reachable from other commits, to make detection of fast forward condition in multi-head merge easier. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Show all merge-base candidates from show-branch --merge-baseJunio C Hamano2005-09-08
| | | | | | This would make things easier to use for Octopus. Signed-off-by: Junio C Hamano <junkio@cox.net>
* show-branch: make it work in a subdirectory.Junio C Hamano2005-08-30
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* Updates: show-branchJunio C Hamano2005-08-29
| | | | | | | | | | | | | Earlier show-branch gave names only to commits reachable via first parent ancestry chain. Change the naming code to name everybody. The original idea was to stop at the first merge point in the topological order, and --more=<n> to show commits until we show <n> more extra merge points. However depending on the order of how we discover the commits, it additionally showed parents of the <n>th merge points, which was unnecessary. Signed-off-by: Junio C Hamano <junkio@cox.net>
* Sort branch names snarfed from refs/ hierarchy.Junio C Hamano2005-08-24
| | | | Signed-off-by: Junio C Hamano <junkio@cox.net>
* Clean-up output from "git show-branch" and document it.Junio C Hamano2005-08-22
| | | | | | | | When showing only one branch a lot of default output becomes redundant, so clean it up a bit, and document what is shown. Retire the earlier implementation "git-show-branches-script". Signed-off-by: Junio C Hamano <junkio@cox.net>
* [PATCH] Add 'git show-branch'.Junio C Hamano2005-08-22
The 'git show-branches' command turns out to be reasonably useful, but painfully slow. So rewrite it in C, using ideas from merge-base while enhancing it a bit more. - Unlike show-branches, it can take --heads (show me all my heads), --tags (show me all my tags), or --all (both). - It can take --more=<number> to show beyond the merge-base. - It shows the short name for each commit in the extended SHA1 syntax. - It can find merge-base for more than two heads. Examples: $ git show-branch --more=6 HEAD is almost the same as "git log --pretty=oneline --max-count=6". $ git show-branch --merge-base master mhf misc finds the merge base of the three given heads. $ git show-branch master mhf misc shows logs from the top of these three branch heads, up to their common ancestor commit is shown. $ git show-branch --all --more=10 is poor-man's gitk, showing all the tags and heads, and going back 10 commits beyond the merge base of those refs. Signed-off-by: Junio C Hamano <junkio@cox.net>