From: Jonas Fonseca <fonseca@diku.dk>
To: Petr Baudis <pasky@ucw.cz>, git@vger.kernel.org
Subject: [PATCH] cg-status: handle subdirs when listing heads
Date: Sun, 11 Dec 2005 20:03:05 +0100 [thread overview]
Message-ID: <20051211190305.GD2960@diku.dk> (raw)
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
fonseca@antimatter:~/src/cogito/cogito > cg switch -r master tmp/work
Creating new branch tmp/work: 218ee732bee381746890bf5ffb9bfc4672795954
Switching to branch tmp/work...
fonseca@antimatter:~/src/cogito/cogito > cg status
Heads:
cg-object-id c10cc1d2a99b01ed3bf45d5f2ad6157940a22365
cg-Xedit 41447107236a7d23daa6ab0f40a0829935485bc8
master 218ee732bee381746890bf5ffb9bfc4672795954
R origin 218ee732bee381746890bf5ffb9bfc4672795954
cat: .git/refs/heads/tmp: Is a directory
tmp
commit 2e7be765ca86117dc7af8aa0cd0f090269fee428
tree 0154d7f35e6ae7c357ff18e7b1f46e2ee4d25309
parent 218ee732bee381746890bf5ffb9bfc4672795954
author Jonas Fonseca <fonseca@diku.dk> Sun, 11 Dec 2005 19:57:31 +0100
committer Jonas Fonseca <fonseca@antimatter.localdomain> Sun, 11 Dec 2005 19:57:31 +0100
cg-status | 28 +++++++++++++++++++---------
1 files changed, 19 insertions(+), 9 deletions(-)
diff --git a/cg-status b/cg-status
index a4c5e7a..629c796 100755
--- a/cg-status
+++ b/cg-status
@@ -106,6 +106,24 @@ if [ ! "$gitstatus" ] && [ ! "$workstatu
fi
+list_heads()
+{
+ local path="$1"
+
+ if [ -d "$path" ]; then
+ for head in "$path"/*; do
+ list_heads "$head"
+ done
+ else
+ headsha1=$(cat "$path")
+ headname=${path#$_git/refs/heads/}
+ [ "$headname" = "cg-seek-point" ] && continue
+ cf=" "; rf=" "
+ [ "$headname" = "$_git_head" ] && cf=">"
+ [ -s "$_git/branches/$headname" ] && rf="R"
+ echo -e " $rf$cf$headname\t$headsha1"
+ fi
+}
if [ "$gitstatus" ]; then
mkdir -p $_git/refs/heads
@@ -123,15 +141,7 @@ if [ "$gitstatus" ]; then
fi
echo "Heads:"
- for head in $_git/refs/heads/*; do
- headsha1=$(cat "$head")
- headname=$(basename "$head")
- [ "$headname" = "cg-seek-point" ] && continue
- cf=" "; rf=" "
- [ "$headname" = "$_git_head" ] && cf=">"
- [ -s "$_git/branches/$headname" ] && rf="R"
- echo -e " $rf$cf$headname\t$headsha1"
- done
+ list_heads "$_git/refs/heads"
if [ -s "$_git/merging" ]; then
tmp=$(cat "$_git/merging")
\f
!-------------------------------------------------------------flip-
--
Jonas Fonseca
next reply other threads:[~2005-12-11 19:03 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-12-11 19:03 Jonas Fonseca [this message]
2005-12-11 19:49 ` [PATCH] cg-status: handle subdirs when listing heads Jonas Fonseca
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=20051211190305.GD2960@diku.dk \
--to=fonseca@diku.dk \
--cc=git@vger.kernel.org \
--cc=pasky@ucw.cz \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.