Re: [PATCH v3] gitk: add --no-replace-objects option

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

Re: [PATCH v3] gitk: add --no-replace-objects option

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:47:45

Christian Couder [off-list ref] writes:
This option simply sets the GIT_NO_REPLACE_OBJECTS environment
variable, and that is enough to make gitk ignore replace refs.
This is a much less interesting implementation detail than everything else
you should talk about the new feature you are adding; why is it the first
sentence of the message?
The GIT_NO_REPLACE_OBJECTS is set to "1" instead of "" as it is
safer on some platforms, thanks to Johannes Sixt and Michael J
Gruber.
And this is even less interesting.
Replace refs are useful to change some git objects after they
have started to be shared between different repositories. One
might want to ignore them to see the original state.
This is what the reader needs to see to understand why this patch is
worthy of consideration.  It is a minor offense that the paragraph does
not end with "... original state, and --no-replace-objects option can be
used from the command line to do so", but this could be excused if this is
made the first paragraph in the message, close to the subject.

I wonder if this switch deserves run-time flippability, though...
quoted hunk
Tested-by: Michael J Gruber <redacted>
Signed-off-by: Christian Couder <redacted>
---
 gitk-git/gitk |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/gitk-git/gitk b/gitk-git/gitk
index a0214b7..c586b93 100644
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -128,7 +128,7 @@ proc unmerged_files {files} {
 }
 
 proc parseviewargs {n arglist} {
-    global vdatemode vmergeonly vflags vdflags vrevs vfiltered vorigargs
+    global vdatemode vmergeonly vflags vdflags vrevs vfiltered vorigargs env
 
     set vdatemode($n) 0
     set vmergeonly($n) 0
@@ -208,6 +208,9 @@ proc parseviewargs {n arglist} {
 		# git rev-parse doesn't understand --merge
 		lappend revargs --gitk-symmetric-diff-marker MERGE_HEAD...HEAD
 	    }
+	    "--no-replace-objects" {
+		set env(GIT_NO_REPLACE_OBJECTS) "1"
+	    }
 	    "-*" {
 		# Other flag arguments including -<n>
 		if {[string is digit -strict [string range $arg 1 end]]} {
-- 
1.6.5.1.gaf97d

Re: [PATCH v3] gitk: add --no-replace-objects option

From: Christian Couder <hidden>
Date: 2016-06-15 22:47:45

On vendredi 20 novembre 2009, Junio C Hamano wrote:
Christian Couder [off-list ref] writes:
quoted
This option simply sets the GIT_NO_REPLACE_OBJECTS environment
variable, and that is enough to make gitk ignore replace refs.
This is a much less interesting implementation detail than everything
else you should talk about the new feature you are adding; why is it the
first sentence of the message?
This patch was previously the second patch in a 2 patch series so the 
previous patch was already explaining some context. Perhaps I should have 
sent the first patch again with this one.
quoted
The GIT_NO_REPLACE_OBJECTS is set to "1" instead of "" as it is
safer on some platforms, thanks to Johannes Sixt and Michael J
Gruber.
And this is even less interesting.
quoted
Replace refs are useful to change some git objects after they
have started to be shared between different repositories. One
might want to ignore them to see the original state.
This is what the reader needs to see to understand why this patch is
worthy of consideration.  It is a minor offense that the paragraph does
not end with "... original state, and --no-replace-objects option can be
used from the command line to do so", but this could be excused if this
is made the first paragraph in the message, close to the subject.
Ok, I will send the full series again with these changes.
I wonder if this switch deserves run-time flippability, though...
The following patch in master added run-time flippability to many commands:

http://git.kernel.org/?p=git/git.git;a=commit;h=b0fa7ab51b29d34579d8f6bb4443dfbcb8278c7a

and Michael J Gruber wrote "we need a way to specify
--no-replace-objects for gitk" in this message:

http://article.gmane.org/gmane.comp.version-control.git/132576/

Best regards,
Christian.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help