Re: [SQUASHED PATCH] Add support for GIT_CEILING_DIRECTORIES

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

 



Hi,

On Fri, 16 May 2008, David Reiss wrote:

> Sorry I missed this before.  As you said, in Johannes's version the 
> ceiling directories are the last directories we look in, whereas in my 
> implementation, they are the first directories we do not look in.  I 
> made this choice because it makes more sense for me to set my ceiling to 
> "/home", rather than "/home/dreiss", so it will work even if I am in 
> another user's homedir.
> 
> There is also a difference in how they handle the case where the cwd is 
> a ceiling directory, but I think it is worth sorting out the first issue 
> first.

Please do not top-post.

This is the interdiff to the last squashed patch:

-- snip --
diff --git a/setup.c b/setup.c
index cece3e4..2f7a17a 100644
--- a/setup.c
+++ b/setup.c
@@ -441,6 +441,8 @@ const char *setup_git_directory_gently(int *nongit_ok)
 	 */
 	offset = len = strlen(cwd);
 	for (;;) {
+		if (offset <= min_offset)
+			goto non_git;
 		gitfile_dir = read_gitfile_gently(DEFAULT_GIT_DIR_ENVIRONMENT);
 		if (gitfile_dir) {
 			if (set_git_dir(gitfile_dir))
@@ -460,6 +462,7 @@ const char *setup_git_directory_gently(int *nongit_ok)
 		chdir("..");
 		do {
 			if (offset <= min_offset) {
+non_git:
 				if (nongit_ok) {
 					if (chdir(cwd))
 						die("Cannot come back to cwd");
diff --git a/t/t1504-ceiling-directories.sh b/t/t1504-ceiling-directories.sh
index 6c8757d..edc00be 100644
--- a/t/t1504-ceiling-directories.sh
+++ b/t/t1504-ceiling-directories.sh
@@ -30,6 +30,15 @@ test_expect_success 'with non-matching ceiling directory' '
 
 '
 
+test_expect_success 'with matching ceiling directory' '
+
+	GIT_CEILING_DIRECTORIES="$CWD" &&
+	export GIT_CEILING_DIRECTORIES &&
+	(cd subdir && test_must_fail git rev-parse --git-dir) &&
+	test_must_fail git rev-parse --git-dir
+
+'
+
 test_expect_success 'with matching ceiling directories' '
 
 	GIT_CEILING_DIRECTORIES="$CWD/X:$CWD/subdir" &&
-- snap --

I will post the squashed patch as a response to this mail.

Ciao,
Dscho

--
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