[PATCH] prompt: squelch error output from cat

Subsystems: the rest

STALE3722d

5 messages, 2 authors, 2016-06-15 · open the first message on its own page

[PATCH] prompt: squelch error output from cat

From: Ramkumar Ramachandra <hidden>
Date: 2016-06-15 22:57:43

The files $g/rebase-{merge,apply}/{head-name,msgnum,end} are not
guaranteed to exist.  When attempting to cat them, squelch the error
output to get rid of messages like these:

  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory

Signed-off-by: Ramkumar Ramachandra <redacted>
---
 contrib/completion/git-prompt.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh
index 86a4f3f..07a6218 100644
--- a/contrib/completion/git-prompt.sh
+++ b/contrib/completion/git-prompt.sh
@@ -347,9 +347,9 @@ __git_ps1 ()
 		local step=""
 		local total=""
 		if [ -d "$g/rebase-merge" ]; then
-			b="$(cat "$g/rebase-merge/head-name")"
-			step=$(cat "$g/rebase-merge/msgnum")
-			total=$(cat "$g/rebase-merge/end")
+			b="$(cat "$g/rebase-merge/head-name" 2>/dev/null)"
+			step=$(cat "$g/rebase-merge/msgnum" 2>/dev/null)
+			total=$(cat "$g/rebase-merge/end" 2>/dev/null)
 			if [ -f "$g/rebase-merge/interactive" ]; then
 				r="|REBASE-i"
 			else
@@ -357,10 +357,10 @@ __git_ps1 ()
 			fi
 		else
 			if [ -d "$g/rebase-apply" ]; then
-				step=$(cat "$g/rebase-apply/next")
-				total=$(cat "$g/rebase-apply/last")
+				step=$(cat "$g/rebase-apply/next" 2>/dev/null)
+				total=$(cat "$g/rebase-apply/last" 2>/dev/null)
 				if [ -f "$g/rebase-apply/rebasing" ]; then
-					b="$(cat "$g/rebase-apply/head-name")"
+					b="$(cat "$g/rebase-apply/head-name" 2>/dev/null)"
 					r="|REBASE"
 				elif [ -f "$g/rebase-apply/applying" ]; then
 					r="|AM"
-- 
1.8.3.1.384.g7cec0b4

Re: [PATCH] prompt: squelch error output from cat

From: SZEDER Gábor <hidden>
Date: 2016-06-15 22:57:44

Hi,

On Thu, Jun 13, 2013 at 07:16:49PM +0530, Ramkumar Ramachandra wrote:
The files $g/rebase-{merge,apply}/{head-name,msgnum,end} are not
guaranteed to exist.  When attempting to cat them, squelch the error
output to get rid of messages like these:

  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory

Signed-off-by: Ramkumar Ramachandra <redacted>
Makes sense.

Just curious: when do those files don't exist?  When using an older
version of git with a newer prompt, obviously, but are there other
cases?

Thanks,
Gábor

Re: [PATCH] prompt: squelch error output from cat

From: Ramkumar Ramachandra <hidden>
Date: 2016-06-15 22:57:44

SZEDER Gábor wrote:
Just curious: when do those files don't exist?  When using an older
version of git with a newer prompt, obviously, but are there other
cases?
  # On terminal one
  $ git rebase --interactive master
  # Ignore editor, and open terminal two
  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory
  $

Re: [PATCH] prompt: squelch error output from cat

From: SZEDER Gábor <hidden>
Date: 2016-06-15 22:57:45

On Thu, Jun 13, 2013 at 08:15:59PM +0530, Ramkumar Ramachandra wrote:
SZEDER Gábor wrote:
quoted
Just curious: when do those files don't exist?  When using an older
version of git with a newer prompt, obviously, but are there other
cases?
  # On terminal one
  $ git rebase --interactive master
  # Ignore editor, and open terminal two
  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory
  $
Interesting, I wouldn't have thought of that.

I was wondering whether there are cases and code paths in git rebase,
where it knows what to write into those files but it does not write
them, which might be worth fixing additionally.  In case of this
halfway-started rebase I don't see any point in displaying 0/42, so I
don't think any additional fix would be necessary.


Thanks,
Gábor

Re: [PATCH] prompt: squelch error output from cat

From: SZEDER Gábor <hidden>
Date: 2016-06-15 22:57:45

Hi Junio,

I see you picked up this patch in branch
'rr/prompt-autostash-breakage-fix'.  This patch has actually nothing
to do with autostash, it is a fix for b71dc3e1 (bash-prompt.sh: show
where rebase is at when stopped, 2013-04-25).


Gábor

On Thu, Jun 13, 2013 at 07:16:49PM +0530, Ramkumar Ramachandra wrote:
quoted hunk
The files $g/rebase-{merge,apply}/{head-name,msgnum,end} are not
guaranteed to exist.  When attempting to cat them, squelch the error
output to get rid of messages like these:

  cat: .git/rebase-merge/msgnum: No such file or directory
  cat: .git/rebase-merge/end: No such file or directory

Signed-off-by: Ramkumar Ramachandra <redacted>
---
 contrib/completion/git-prompt.sh | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/contrib/completion/git-prompt.sh b/contrib/completion/git-prompt.sh
index 86a4f3f..07a6218 100644
--- a/contrib/completion/git-prompt.sh
+++ b/contrib/completion/git-prompt.sh
@@ -347,9 +347,9 @@ __git_ps1 ()
 		local step=""
 		local total=""
 		if [ -d "$g/rebase-merge" ]; then
-			b="$(cat "$g/rebase-merge/head-name")"
-			step=$(cat "$g/rebase-merge/msgnum")
-			total=$(cat "$g/rebase-merge/end")
+			b="$(cat "$g/rebase-merge/head-name" 2>/dev/null)"
+			step=$(cat "$g/rebase-merge/msgnum" 2>/dev/null)
+			total=$(cat "$g/rebase-merge/end" 2>/dev/null)
 			if [ -f "$g/rebase-merge/interactive" ]; then
 				r="|REBASE-i"
 			else
@@ -357,10 +357,10 @@ __git_ps1 ()
 			fi
 		else
 			if [ -d "$g/rebase-apply" ]; then
-				step=$(cat "$g/rebase-apply/next")
-				total=$(cat "$g/rebase-apply/last")
+				step=$(cat "$g/rebase-apply/next" 2>/dev/null)
+				total=$(cat "$g/rebase-apply/last" 2>/dev/null)
 				if [ -f "$g/rebase-apply/rebasing" ]; then
-					b="$(cat "$g/rebase-apply/head-name")"
+					b="$(cat "$g/rebase-apply/head-name" 2>/dev/null)"
 					r="|REBASE"
 				elif [ -f "$g/rebase-apply/applying" ]; then
 					r="|AM"
-- 
1.8.3.1.384.g7cec0b4
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help