Nie powinieneś dodawać żadnych plików tymczasowych do SVN, są tymczasowe. Cały katalog obj składa się z plików, które są tworzone podczas procesu budowania, a następnie są odrzucane. (Oczywiście, pozostają na dysku, ponieważ niektóre są ponownie używane, tak jak pamięć podręczna, gdy pliki źródłowe się nie zmieniają, ale to jest jedyny powód, dla którego nie są usuwane po każdym kompilacji).
Katalog bin to nieco inna sprawa. Można dodawać pliki binarne do SVN, prawdopodobnie już to robisz dla ikon i plików graficznych. Niektóre osoby dodają również zbudowane pliki binarne, to decyzja, która zależy od procesów zarządzania konfiguracją, nie ma "złej" odpowiedzi. Czasami jednak katalog bin może zostać wypełniony innymi plikami, których nie chcesz dodawać. Jeśli budujesz aplikacje .net, dostaniesz ładunek zależnych bibliotek dll skopiowany do katalogu bin, który nie jest ściśle częścią twojego projektu. Dodanie ich spowoduje po prostu powiększenie twojego repozytorium bez żadnych korzyści. Podobnie są obsługiwane pliki binarne w bin, takie jak pliki symboli debugowania .pdb. Te też nie są naprawdę potrzebne.
Dla pliku rozwiązania, nie jestem pewien pytanie, ale jeśli nie można go sprawdzić, to dlatego, że plik .sln jest po prostu "wrapper" dla jednego lub więcej plików projektu. Nie jest to bezwzględnie potrzebne do zbudowania projektu studia wizualnego, ponieważ nowy projekt zostanie utworzony w razie potrzeby. Domyślam się, że Twoi użytkownicy mogą tworzyć własne pliki .sln z różnymi grupami projektów, dzięki czemu każdy z nich będzie inny dla każdego użytkownika. To byłby powód, aby zapobiec checkin, więc każdy użytkownik nie nadpisałby swoich własnych plików (chociaż istnieją sposoby, aby użytkownik mógł zapobiec modyfikacji pliku przechowywanego w svn).
Wygląda na to, że twoja strategia konfiguracji nie wymaga dodawania żadnych plików binarnych do svn. W takim przypadku jest to bardzo dobry pomysł, aby temu zapobiec przypadkowo z hakiem przed popełnieniem błędu. Zaleciłabym także dodanie tych wyjątków do ignorowanych globalnych po stronie klienta, aby pomóc użytkownikom w próbach dodawania tych plików w pierwszej kolejności.
+1 Zgadzam się z twoją odpowiedzią, która rozszerza się o punkty, które zrobiłem w mojej odpowiedzi poniżej. –
@bbjbaand świetna odpowiedź! szczególnie myślę, że to, co powiedziałeś o pliku .sln, jest właściwym powodem, dla którego mój klient nie chce, bym kliknął - w pliku .sln. – VJAI
Nawiasem mówiąc, istnieje lista zmian "ignore-on-commit", którą możesz ustawić na pliku sln, jeśli dodałeś ją i nie chcesz, aby lokalne zmiany zostały zatwierdzone. – gbjbaanb