Some strange behavior of git

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Some strange behavior of git

Olga Pshenichnikova
Hello,
we use git in our project.
What can be cause for further confusing behavior?

     git@ip5server:~$ git status
     On branch master
     Untracked files:
       (use "git add <file>..." to include in what will be committed)

         app/addons/arliteks/

     nothing added to commit but untracked files present (use "git add"
to track)
     git@ip5server:~$ git clean -dn
     Would remove app/addons/arliteks/
     Would remove design/
     Would remove js/
     Would remove var/langs/en/

Why I don't see all 4 directories in first command?
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Some strange behavior of git

Stefan Beller-4
On Wed, Feb 24, 2016 at 2:43 PM, Olga Pshenichnikova <[hidden email]> wrote:

> Hello,
> we use git in our project.
> What can be cause for further confusing behavior?
>
>     git@ip5server:~$ git status
>     On branch master
>     Untracked files:
>       (use "git add <file>..." to include in what will be committed)
>
>         app/addons/arliteks/
>
>     nothing added to commit but untracked files present (use "git add" to
> track)
>     git@ip5server:~$ git clean -dn
>     Would remove app/addons/arliteks/
>     Would remove design/
>     Would remove js/
>     Would remove var/langs/en/
>
> Why I don't see all 4 directories in first command?

Look at the effects of the .gitignore file

https://git-scm.com/docs/gitignore

> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [hidden email]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

RE: Some strange behavior of git

Randall S. Becker
In reply to this post by Olga Pshenichnikova
On February 24, 2016 5:43 PM, Olga Pshenichnikova wrote

> What can be cause for further confusing behavior?
>
>      git@ip5server:~$ git status
>      On branch master
>      Untracked files:
>        (use "git add <file>..." to include in what will be committed)
>
>          app/addons/arliteks/
>
>      nothing added to commit but untracked files present (use "git add"
> to track)
>      git@ip5server:~$ git clean -dn
>      Would remove app/addons/arliteks/
>      Would remove design/
>      Would remove js/
>      Would remove var/langs/en/
>
> Why I don't see all 4 directories in first command?

What do your .gitignore files contain in this project?

Cheers,
Randall
-- Brief whoami: NonStop&UNIX developer since approximately UNIX(421664400)/NonStop(211288444200000000)
-- In my real life, I talk too much.



--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Some strange behavior of git

Thomas Gummerer
In reply to this post by Olga Pshenichnikova
On 02/25, Olga Pshenichnikova wrote:

> Hello,
> we use git in our project.
> What can be cause for further confusing behavior?
>
>     git@ip5server:~$ git status
>     On branch master
>     Untracked files:
>       (use "git add <file>..." to include in what will be committed)
>
>         app/addons/arliteks/
>
>     nothing added to commit but untracked files present (use "git add" to
> track)
>     git@ip5server:~$ git clean -dn
>     Would remove app/addons/arliteks/
>     Would remove design/
>     Would remove js/
>     Would remove var/langs/en/
>
> Why I don't see all 4 directories in first command?

Are the design/, js/ and var/langs/en/ directories empty?  Git doesn't
track empty directories, so they won't show up in git status, but with
git clean -d you specify that Git should also remove untracked
directories, which is why you see them here.

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

--
Thomas
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Some strange behavior of git

Thomas Gummerer
[Please keep everyone cc'd in the conversation, especially the mailing
list.  I added it back for now.
Also please don't top post on the list]

On 02/25, Olga Pshenichnikova wrote:

> No, it isn't empty, but I found the problem.
> Problem was that I handled subdirectories structure in exclude file:
>
> design/dir1
> design/dir2
>
> But
>
> design/dir3 wasn't ignored and wasn't controlled.
>
> So, my problem take place when some sub directory both isn't ignored AND
> isn't controlled even if it isn't empty.

I think that's a bug, I think this directory should only be removed if
-x is given.  I haven't come up with a patch yet, but here's a test
demonstrating the failure.

diff --git a/t/t7300-clean.sh b/t/t7300-clean.sh
index 86ceb38..0961007 100755
--- a/t/t7300-clean.sh
+++ b/t/t7300-clean.sh
@@ -653,4 +653,13 @@ test_expect_success 'git clean -d respects pathspecs (pathspec is prefix of dir)
  test_path_is_dir foobar
 '

+test_expect_failure 'git clean -d does not clean ignored files in subdir' '
+ mkdir -p sub/dir &&
+ >sub/dir/file &&
+ test_when_finished rm .gitignore &&
+ echo sub/dir/ >.gitignore &&
+ git clean -df sub &&
+ test_path_is_file sub/dir/file
+'
+
 test_done


> Thank you for response!
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: Some strange behavior of git

Olga Pshenichnikova
Thanx )

On 02/25/2016 07:14 PM, Thomas Gummerer wrote:

> [Please keep everyone cc'd in the conversation, especially the mailing
> list.  I added it back for now.
> Also please don't top post on the list]
>
> On 02/25, Olga Pshenichnikova wrote:
>> No, it isn't empty, but I found the problem.
>> Problem was that I handled subdirectories structure in exclude file:
>>
>> design/dir1
>> design/dir2
>>
>> But
>>
>> design/dir3 wasn't ignored and wasn't controlled.
>>
>> So, my problem take place when some sub directory both isn't ignored AND
>> isn't controlled even if it isn't empty.
> I think that's a bug, I think this directory should only be removed if
> -x is given.  I haven't come up with a patch yet, but here's a test
> demonstrating the failure.
>
> diff --git a/t/t7300-clean.sh b/t/t7300-clean.sh
> index 86ceb38..0961007 100755
> --- a/t/t7300-clean.sh
> +++ b/t/t7300-clean.sh
> @@ -653,4 +653,13 @@ test_expect_success 'git clean -d respects pathspecs (pathspec is prefix of dir)
>   test_path_is_dir foobar
>   '
>
> +test_expect_failure 'git clean -d does not clean ignored files in subdir' '
> + mkdir -p sub/dir &&
> + >sub/dir/file &&
> + test_when_finished rm .gitignore &&
> + echo sub/dir/ >.gitignore &&
> + git clean -df sub &&
> + test_path_is_file sub/dir/file
> +'
> +
>   test_done
>
>
>> Thank you for response!

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