[PATCH guilt] Handles slashes in branch names

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



When a branch name has a slash and autotagging is enabled, guilt barfs
when updating the stack tags.  Escape the branch name in the tags to
allow this to work.

Also allow guilt to create the patches directory for these branches.

Signed-off-by: Eric Lesh <eclesh@xxxxxxxx>
---
 guilt      |   15 +++++++++------
 guilt-init |    2 +-
 2 files changed, 10 insertions(+), 7 deletions(-)

diff --git a/guilt b/guilt
index 214def4..9e4789a 100755
--- a/guilt
+++ b/guilt
@@ -334,20 +334,23 @@ update_stack_tags()
 		return 0
 	fi
 
+        # handle branches with slashes
+        newbranch=`echo $branch | sed -e 's,\/,-,'`
+
 	if [ `wc -l < $applied` -gt 0 ]; then
 		# there are patches applied, therefore we must get the top,
 		# bottom and base hashes, and update the tags
 
-		git-rev-parse HEAD > "$GIT_DIR/refs/tags/${branch}_top"
-		head -1 < $applied | cut -d: -f1 > "$GIT_DIR/refs/tags/${branch}_bottom"
-		git-rev-parse $(head -1 < $applied | cut -d: -f1)^ > "$GIT_DIR/refs/tags/${branch}_base"
+		git-rev-parse HEAD > "$GIT_DIR/refs/tags/${newbranch}_top"
+		head -1 < $applied | cut -d: -f1 > "$GIT_DIR/refs/tags/${newbranch}_bottom"
+		git-rev-parse $(head -1 < $applied | cut -d: -f1)^ > "$GIT_DIR/refs/tags/${newbranch}_base"
 	else
 		# there are no patches applied, therefore we must remove the
 		# tags to old top, bottom, and base
 
-		rm -f "$GIT_DIR/refs/tags/${branch}_top"
-		rm -f "$GIT_DIR/refs/tags/${branch}_bottom"
-		rm -f "$GIT_DIR/refs/tags/${branch}_base"
+		rm -f "$GIT_DIR/refs/tags/${newbranch}_top"
+		rm -f "$GIT_DIR/refs/tags/${newbranch}_bottom"
+		rm -f "$GIT_DIR/refs/tags/${newbranch}_base"
 	fi
 }
 
diff --git a/guilt-init b/guilt-init
index ffe2434..9136f89 100755
--- a/guilt-init
+++ b/guilt-init
@@ -24,7 +24,7 @@ if [ -d "$GUILT_DIR/$branch" ]; then
 fi
 
 [ ! -d "$GUILT_DIR" ] && mkdir $GUILT_DIR
-mkdir $GUILT_DIR/$branch
+mkdir -p $GUILT_DIR/$branch
 touch $GUILT_DIR/$branch/series
 touch $GUILT_DIR/$branch/status
 
-- 
1.5.2

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux