# git eclipse => ständig Änderungen in "classes"



## freez (14. Jun 2012)

Hallo,

ich habe seit neuestem ein Problem mit einem Java Projekt (mit eGit verwaltet) welches ständig Änderungen anzeigt, auch wenn ich gerade eben erst commitet habe. Und zwar bemeckert er ständig Änderungen an "classes". Das Projekt besteht schon seit einiger Zeit und nun haben plötzlich alle dieses Problem. Kennt es jemand und kann mir jemand sagen, wie es behoben werden kann?

Problematisch wird es dann bei Push und Pull, wo dann ab und zu Konflikte entstehen und kein Push mehr möglich ist.


----------



## nillehammer (14. Jun 2012)

Wenn _classes_ der Ordner ist, in den Eclipse hineinkompiliert, liegt es daran, dass die .class-Dateien sich eben bei praktisch jedem Speichern ändern. Der classes-Ordner mit den kompilierten Klassen hat in einem *Sourcecode*-Repository nix zu suchen. Irgend ein **** aus Deinem Team hat da wohl einen Bock geschossen und diesen Ordner eingecheckt. Kenne mich mit Git nicht aus. Aber es wird sicher eine Möglichkeit geben, den classes-Ordner zu löschen, das Löschen zu commiten und ihn dann zu einer Liste zu ignorierender Resourcen hinzu zu fügen.


----------



## JohannisderKaeufer (14. Jun 2012)

in die Datei 
	
	
	
	





```
.gitignore
```
 den Ordner classes hinzufügen


```
classes/
```

und committen.

Danach die eingecheckten class-Dateien vom *Repository* löschen und committen.

Danach sollte gut sein.


----------



## freez (15. Jun 2012)

nillehammer hat gesagt.:


> Wenn _classes_ der Ordner ist, in den Eclipse hineinkompiliert, liegt es daran, dass die .class-Dateien sich eben bei praktisch jedem Speichern ändern. Der classes-Ordner mit den kompilierten Klassen hat in einem *Sourcecode*-Repository nix zu suchen. Irgend ein **** aus Deinem Team hat da wohl einen Bock geschossen und diesen Ordner eingecheckt. Kenne mich mit Git nicht aus. Aber es wird sicher eine Möglichkeit geben, den classes-Ordner zu löschen, das Löschen zu commiten und ihn dann zu einer Liste zu ignorierender Resourcen hinzu zu fügen.



Ja, so ist es ... und es sieht tatsächlich so aus, als wenn das passiert wäre. Läuft Eclipse nicht, so kann ich mit tortoiseGit Commiten ohne dass er danach eine Änderung erkennt. Und die .class Files habe ich im Git Repo gefunden. In anderen Java Projekten, welche mit eGit verwaltet werden, werden einem keine .class files zum einchecken angeboten. Komisch, dass dies passieren konnte.



JohannisderKaeufer hat gesagt.:


> in die Datei
> 
> 
> 
> ...



ich habe nun folgendes in der git bash durchgeführt:

```
git filter-branch --index-filter 'git rm -r --cached --ignore-unmatch C:\Users\gggg\dd\git-repositories\projekt\classes' --prune-empty -- --all
echo "/classes" >> .gitignore
git add .gitignore
git commit -m "Add classes to .gitignore"
```

Dies hat nun die class Files entfernt, aber leider behebt das mein Problem nicht. Noch eine Idee?


----------



## JohannisderKaeufer (15. Jun 2012)

```
nicht     /classes
sondern   classes/
```

also

```
echo "classes/" >> .gitignore
git add .gitignore
git commit -m "Add classes to .gitignore"
```


----------



## freez (15. Jun 2012)

OK, probiere ich gleich aus.

Müssen alle Teammitglieder ihr Repository austauschen, oder reicht ein pull.

Muss ich [c]git filter-branch --index-filter[/c] auf das zentrale Repo durchführen, oder reicht es, wenn ich es auf mein lokales Repo mache und dann pushe. Oder wird sogar das zentrale gleich mit verändert?


----------

