Używam rozszerzenia VS 2013 Update 3 z rozszerzeniem "Visual Studio Tools for Git". To rozszerzenie jest przeznaczone dla użytkowników zarówno eksploratora zespołu, jak i Gita, a ja nie mam zainstalowanych i uruchomionych innych rozszerzeń powiązanych z Git i TFS. Używam Microsoft's TFS Cloud service do tworzenia kopii zapasowych i udostępniania mojej pracy.Rozszerzenia TFS/Git wydają się ignorować .gitignore
Wszystko działało zgodnie z oczekiwaniami przez kilka miesięcy. Chcę móc ponownie użyć tego rozszerzenia VS, ale problem polega na tym, że pliki, które powinny być ignorowane przez .gitignore, są domyślnie włączone. To samo repozytorium Git, gdy jest wyświetlane z wiersza poleceń, nie ma tego problemu i działa zgodnie z oczekiwaniami.
Prawdopodobnie ważne: W pewnym momencie w połowie założyłem proste konto TFS online, ale nigdy nie używałem go lokalnie i nigdy nie korelowałem z żadnymi problemami, o których tutaj wspomniałem. Ponadto, dawno temu musiałem zastosować się do porady w innym poście, aby usunąć te pliki binarne z kontroli wersji, ponieważ dodałem plik .gitignore zbyt późno. Ponieważ linia poleceń nie ma tego problemu, myślę, że coś innego jest w działaniu i że - ostry reset działa właściwie.
Na czym polega problem z VS? Czy jest jakiś sposób, aby zmienić ustawienie lub ogólnie poprawić nadzór, aby zignorować pliki w pliku .gitignore w katalogu Git, ale nie ignorować pliku .gitignore?
Aby wyłączyć niektóre potencjalne pytania: Potwierdziłem, że katalogi i gałęzie są takie same na obu interfejsach, obserwując, że wszystkie zmiany są dodawane do Git/TFS i Posh Git oraz Git Bash i wszystkich innych interfejsów Git I próbowałem. Jedynym problemem jest to, że dodatkowe pliki, które powinny zostać zignorowane, nie są ignorowane w rozszerzeniu VS.
Oto przykład pliku .gitignore że używam, który został wyprodukowany przez VS:
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
x64/
build/
[Bb]in/
[Oo]bj/
Czy możesz pokazać nam swoje '.gitignore'? Jaka jest ścieżka do plików, które nie są ignorowane? Kiedy mówisz "nie ignoruj", co dokładnie masz na myśli? Czy pliki są wyświetlane na liście "uwzględnione zmiany"? –
## Ignoruj pliki tymczasowe Visual Studio, kompiluj wyniki i pliki # wygenerowane przez popularne dodatki Visual Studio. # Pliki użytkownika specyficzne * .suo * .user * .sln.docstates # Budowa Wynika [DD] ebug/ [Rr] elease/ x64/ build/ [Bb] w/ [Oo] bj/ –
@EdwardThomson Plik jest zbyt duży, aby pokazać go w całości. Powyżej znajduje się kilka przykładowych linii. Jak widać "[Bb] in /" znajduje się w pliku .gitignore, ale "Included Changes" pochodzą z katalogu "Bin /". –