git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* Gitattributes file is not respected when switching between branches
@ 2016-09-12 12:55 Виталий Ищенко
  2016-09-12 19:35 ` Torsten Bögershausen
  0 siblings, 1 reply; 5+ messages in thread
From: Виталий Ищенко @ 2016-09-12 12:55 UTC (permalink / raw)
  To: git

Good day

I faced following issue with gitattributes file (at least eol setting)
when was trying to force `lf` mode on windows.

We have 2 branches: master & dev. With master set as HEAD in repository

I've added `.gitattributes` with following content to `dev` branch

```
* text eol=lf
```

Now when you clone this repo on other machine and checkout dev branch,
eol setting is not respected.
As a workaround you can rm all files except .git folder and do hard reset.

Issue is reproducible on windows & unix versions. Test repo can be
found on github
https://github.com/betalb/gitattributes-issue

master branch - one file without gitattributes
feature-branch - .gitattributes added with eol=lf
unix-feature-branch - .gitattributes added with eol=crlf

Thanks,
Vitalii

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Gitattributes file is not respected when switching between branches
  2016-09-12 12:55 Gitattributes file is not respected when switching between branches Виталий Ищенко
@ 2016-09-12 19:35 ` Torsten Bögershausen
  2016-09-12 19:42   ` Torsten Bögershausen
  0 siblings, 1 reply; 5+ messages in thread
From: Torsten Bögershausen @ 2016-09-12 19:35 UTC (permalink / raw)
  To: Виталий Ищенко,
	git

On 12.09.16 14:55, Виталий Ищенко wrote:
> Good day
>
> I faced following issue with gitattributes file (at least eol setting)
> when was trying to force `lf` mode on windows.
>
> We have 2 branches: master & dev. With master set as HEAD in repository
>
> I've added `.gitattributes` with following content to `dev` branch
>
> ```
> * text eol=lf
> ```
>
> Now when you clone this repo on other machine and checkout dev branch,
> eol setting is not respected.
> As a workaround you can rm all files except .git folder and do hard reset.
>
> Issue is reproducible on windows & unix versions. Test repo can be
> found on github
> https://github.com/betalb/gitattributes-issue
>
> master branch - one file without gitattributes
> feature-branch - .gitattributes added with eol=lf
> unix-feature-branch - .gitattributes added with eol=crlf
>
> Thanks,
> Vitalii
Some more information may be needed, to help to debug.

Which version of Git are you using ?
What does

git ls-files --eol

say ?



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Gitattributes file is not respected when switching between branches
  2016-09-12 19:35 ` Torsten Bögershausen
@ 2016-09-12 19:42   ` Torsten Bögershausen
  2016-09-16  6:51     ` Виталий Ищенко
  0 siblings, 1 reply; 5+ messages in thread
From: Torsten Bögershausen @ 2016-09-12 19:42 UTC (permalink / raw)
  To: Виталий Ищенко,
	git

On 12.09.16 21:35, Torsten Bögershausen wrote:
> On 12.09.16 14:55, Виталий Ищенко wrote:
>> Good day
>>
>> I faced following issue with gitattributes file (at least eol setting)
>> when was trying to force `lf` mode on windows.
>>
>> We have 2 branches: master & dev. With master set as HEAD in repository
>>
>> I've added `.gitattributes` with following content to `dev` branch
>>
>> ```
>> * text eol=lf
>> ```
>>
>> Now when you clone this repo on other machine and checkout dev branch,
>> eol setting is not respected.
>> As a workaround you can rm all files except .git folder and do hard reset.
>>
>> Issue is reproducible on windows & unix versions. Test repo can be
>> found on github
>> https://github.com/betalb/gitattributes-issue
>>
>> master branch - one file without gitattributes
>> feature-branch - .gitattributes added with eol=lf
>> unix-feature-branch - .gitattributes added with eol=crlf
>>
>> Thanks,
>> Vitalii
> Some more information may be needed, to help to debug.
>
> Which version of Git are you using ?
> What does
>
> git ls-files --eol
>
> say ?
Obs, All information was in the email.

tb@xxx:/tmp/gitattributes-issue> git ls-files --eol
i/lf    w/lf    attr/                   testfile-crlf.txt
tb@xxx:/tmp/gitattributes-issue> ls -al
total 8
drwxr-xr-x   4 tb    wheel  136 Sep 12 21:38 .
drwxrwxrwt  19 root  wheel  646 Sep 12 21:38 ..
drwxr-xr-x  13 tb    wheel  442 Sep 12 21:38 .git
-rw-r--r--   1 tb    wheel   60 Sep 12 21:38 testfile-crlf.txt
tb@xxx:/tmp/gitattributes-issue>

Could it be that you didn't commit the file ".gitattributes" ?
This could help:
git add .gitattributes && git commit -m "Add .gitattributes"








^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Gitattributes file is not respected when switching between branches
  2016-09-12 19:42   ` Torsten Bögershausen
@ 2016-09-16  6:51     ` Виталий Ищенко
  2016-09-18 19:31       ` Torsten Bögershausen
  0 siblings, 1 reply; 5+ messages in thread
From: Виталий Ищенко @ 2016-09-16  6:51 UTC (permalink / raw)
  To: Torsten Bögershausen; +Cc: git

Sorry for delay.

".gitattributes" indeed is not present in "master", but this is intentionally
It is placed only in following 2 branches:
feature-branch
unix-feature-branch

This is how flow looks on windows
$ git --version
git version 2.9.3.windows.1

vitalii.ishchenko@DESKTOP-9TC9UPB MINGW64 /c/work/repos/gitattributes (master)
$ git ls-files --eol
i/lf    w/crlf  attr/                   testfile-crlf.txt

vitalii.ishchenko@DESKTOP-9TC9UPB MINGW64 /c/work/repos/gitattributes (master)
$ git checkout feature-branch
Switched to branch 'feature-branch'
Your branch is up-to-date with 'origin/feature-branch'.

vitalii.ishchenko@DESKTOP-9TC9UPB MINGW64 /c/work/repos/gitattributes
(feature-branch)
$ git ls-files --eol
i/lf    w/lf    attr/text eol=lf        .gitattributes
i/lf    w/crlf  attr/text eol=lf        testfile-crlf.txt



On Mon, Sep 12, 2016 at 10:42 PM, Torsten Bögershausen <tboegi@web.de> wrote:
> On 12.09.16 21:35, Torsten Bögershausen wrote:
>> On 12.09.16 14:55, Виталий Ищенко wrote:
>>> Good day
>>>
>>> I faced following issue with gitattributes file (at least eol setting)
>>> when was trying to force `lf` mode on windows.
>>>
>>> We have 2 branches: master & dev. With master set as HEAD in repository
>>>
>>> I've added `.gitattributes` with following content to `dev` branch
>>>
>>> ```
>>> * text eol=lf
>>> ```
>>>
>>> Now when you clone this repo on other machine and checkout dev branch,
>>> eol setting is not respected.
>>> As a workaround you can rm all files except .git folder and do hard reset.
>>>
>>> Issue is reproducible on windows & unix versions. Test repo can be
>>> found on github
>>> https://github.com/betalb/gitattributes-issue
>>>
>>> master branch - one file without gitattributes
>>> feature-branch - .gitattributes added with eol=lf
>>> unix-feature-branch - .gitattributes added with eol=crlf
>>>
>>> Thanks,
>>> Vitalii
>> Some more information may be needed, to help to debug.
>>
>> Which version of Git are you using ?
>> What does
>>
>> git ls-files --eol
>>
>> say ?
> Obs, All information was in the email.
>
> tb@xxx:/tmp/gitattributes-issue> git ls-files --eol
> i/lf    w/lf    attr/                   testfile-crlf.txt
> tb@xxx:/tmp/gitattributes-issue> ls -al
> total 8
> drwxr-xr-x   4 tb    wheel  136 Sep 12 21:38 .
> drwxrwxrwt  19 root  wheel  646 Sep 12 21:38 ..
> drwxr-xr-x  13 tb    wheel  442 Sep 12 21:38 .git
> -rw-r--r--   1 tb    wheel   60 Sep 12 21:38 testfile-crlf.txt
> tb@xxx:/tmp/gitattributes-issue>
>
> Could it be that you didn't commit the file ".gitattributes" ?
> This could help:
> git add .gitattributes && git commit -m "Add .gitattributes"
>
>
>
>
>
>
>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Gitattributes file is not respected when switching between branches
  2016-09-16  6:51     ` Виталий Ищенко
@ 2016-09-18 19:31       ` Torsten Bögershausen
  0 siblings, 0 replies; 5+ messages in thread
From: Torsten Bögershausen @ 2016-09-18 19:31 UTC (permalink / raw)
  To: Виталий Ищенко,
	Torsten Bögershausen
  Cc: git

On 16.09.16 08:51, Виталий Ищенко wrote:
> Sorry for delay.
> 
No problem about the delay.

(And please no top-posting)


If you say
> ".gitattributes" indeed is not present in "master", but this is intentionally
then nobody has (to my knowledge) thought about this situation/workflow yet.


The short version:
Git is designed to have the same .gitattributes in different branches.
At least not in the long run.

A typical use case is to create a repo, adjust the
.gitattributes and keep this in all branches.



 




^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-09-18 19:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-12 12:55 Gitattributes file is not respected when switching between branches Виталий Ищенко
2016-09-12 19:35 ` Torsten Bögershausen
2016-09-12 19:42   ` Torsten Bögershausen
2016-09-16  6:51     ` Виталий Ищенко
2016-09-18 19:31       ` Torsten Bögershausen

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).