Re: submodules' shortcomings, was Re: RFC: display dirty submodule working directory in git gui and gitk

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

Re: submodules' shortcomings, was Re: RFC: display dirty submodule working directory in git gui and gitk

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

Nguyen Thai Ngoc Duy [off-list ref] writes:
On 1/7/10, Junio C Hamano [off-list ref] wrote:
quoted
Jens Lehmann [off-list ref] writes:

quoted
Am 06.01.2010 02:04, schrieb Junio C Hamano:
 >> After all we _were_ in agreement.  We both think the user should be told
 >> about untracked files in submodule directory when inspecting the status to
 >> make a commit in the superproject.
 >
 > Thanks. So i'll take a closer look at the diff core (but i suspect i'll
 > need some time until i can come up with some patches because i don't know
 > this part of git very well).


I don't see a direct connection between "the user should be told about
 untracked in the submodule before committing" and diffcore.  It is just
 the matter of "git status" and "git commit" running another instance of
 "git status" via run_command() interface in the submodule directory, no?
You would need to rewrite file paths so that files in submodules are
also relative to the same directory as files in supermodule (I tried
to do that with GIT_WORK_TREE and needed to change a bit). Or you
could show each "git status" output separately, which does not look as
nice as the former in my opinion.
You could show output separately if you want, but I think that is a
separate issue.

I was envisioning that the "git status" in submodule will be run with its
recent --porcelain option, and "git status" or "git commit" would read it
to postprocess and incorporate into its own output.

Re: submodules' shortcomings, was Re: RFC: display dirty submodule working directory in git gui and gitk

From: Nguyen Thai Ngoc Duy <hidden>
Date: 2016-06-15 22:47:58

On 1/7/10, Junio C Hamano [off-list ref] wrote:
Nguyen Thai Ngoc Duy [off-list ref] writes:
 > You would need to rewrite file paths so that files in submodules are
 > also relative to the same directory as files in supermodule (I tried
 > to do that with GIT_WORK_TREE and needed to change a bit). Or you
 > could show each "git status" output separately, which does not look as
 > nice as the former in my opinion.


You could show output separately if you want, but I think that is a
 separate issue.

 I was envisioning that the "git status" in submodule will be run with its
 recent --porcelain option, and "git status" or "git commit" would read it
 to postprocess and incorporate into its own output.
Nice option! I had to call a few "git diff" for that just because I
did not catch up with recent Git development :-(
-- 
Duy

Re: submodules' shortcomings, was Re: RFC: display dirty submodule working directory in git gui and gitk

From: Jens Lehmann <hidden>
Date: 2016-06-15 22:47:58

Am 06.01.2010 18:55, schrieb Junio C Hamano:
Nguyen Thai Ngoc Duy [off-list ref] writes:
quoted
On 1/7/10, Junio C Hamano [off-list ref] wrote:
quoted
Jens Lehmann [off-list ref] writes:

quoted
Am 06.01.2010 02:04, schrieb Junio C Hamano:
 >> After all we _were_ in agreement.  We both think the user should be told
 >> about untracked files in submodule directory when inspecting the status to
 >> make a commit in the superproject.
 >
 > Thanks. So i'll take a closer look at the diff core (but i suspect i'll
 > need some time until i can come up with some patches because i don't know
 > this part of git very well).


I don't see a direct connection between "the user should be told about
 untracked in the submodule before committing" and diffcore.  It is just
 the matter of "git status" and "git commit" running another instance of
 "git status" via run_command() interface in the submodule directory, no?
You would need to rewrite file paths so that files in submodules are
also relative to the same directory as files in supermodule (I tried
to do that with GIT_WORK_TREE and needed to change a bit). Or you
could show each "git status" output separately, which does not look as
nice as the former in my opinion.
You could show output separately if you want, but I think that is a
separate issue.

I was envisioning that the "git status" in submodule will be run with its
recent --porcelain option, and "git status" or "git commit" would read it
to postprocess and incorporate into its own output.
And i thought about printing just one line for each dirty submodule that
contains uncommitted and/or new files. I did not intend to list every
file, for the same reason a "git diff --submodule" only shows the first
line of the commit messages, not the actual differences of all changed
files in the submodule. I am not against being able to show all files
too, but i really would want to have an option to get a short output for
git gui and gitk.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help