如何忽略eclipse元数据但保留模板?
我在Eclipse中有一个ARM项目……实际上,我正在使用基本CDT Eclipse的STM工作台包 我和其他几个人一起工作,我们使用一个git服务器来推拉 然而,每个人的工具链、操作系统等都有一点不同的设置 这会带来麻烦,因为我们是git傻瓜,当我们在本地工作后推动更改时,我们会这样做如何忽略eclipse元数据但保留模板?,eclipse,git,version-control,gitignore,Eclipse,Git,Version Control,Gitignore,我在Eclipse中有一个ARM项目……实际上,我正在使用基本CDT Eclipse的STM工作台包 我和其他几个人一起工作,我们使用一个git服务器来推拉 然而,每个人的工具链、操作系统等都有一点不同的设置 这会带来麻烦,因为我们是git傻瓜,当我们在本地工作后推动更改时,我们会这样做 git add . git commit -m "some message" git push origin master 当我们做改变的时候,我们就做了 git pull origin master 祈祷
git add .
git commit -m "some message"
git push origin master
当我们做改变的时候,我们就做了
git pull origin master
祈祷在此期间没有其他人做任何事情,因为我们害怕合并分歧,但这是另一回事
无论如何,整个项目都有一些子目录,其中包括数据表、Word文档等等……但是,它还包括Eclipse项目的元数据。因此,最后一个提交的人也会推送他们的独特设置,例如工具链路径、首选生成器等。这会破坏其他人的设置,在每次推送之后,其他人都必须手动更新他们的项目设置以修复此问题
那么,对于项目设置,哪些文件对Eclipse来说是特殊的,如果这些文件已经存在,我如何告诉git忽略它们呢?例如,它们需要可用于
git克隆
,但在后续的git push
和git pull
中,它们需要被忽略。如果您需要设置文件,而不需要重命名它,并且设置文件也无需进行版本控制,那么有一种方法可以通过.gitignore
执行以下步骤:
.gitignore
文件名
如果您需要设置文件而不重命名它,并且设置文件也可以,则无需执行版本控制,因此有一种方法是通过
.gitignore
执行以下步骤:
.gitignore
文件名
您可以通过以下方式忽略这些文件的本地更改:
git update-index --skip-worktree -- .project
git update-index --skip-worktree -- .classpath
请参阅:“,它应该更好地抵抗git拉
另一种选择是使用内容过滤器驱动程序,该驱动程序(在
git签出时自动生成.classpath
),如果它还不存在的话。
这允许您对.classpath.tpl
模板进行版本设置,并且您可以将实际的.classpath
完全保密(并且在.gitignore
中)
请参阅。您可以通过以下方式忽略这些文件的本地更改:
git update-index --skip-worktree -- .project
git update-index --skip-worktree -- .classpath
请参阅:“,它应该更好地抵抗git拉
另一种选择是使用内容过滤器驱动程序,该驱动程序(在git签出时自动生成.classpath
),如果它还不存在的话。
这允许您对.classpath.tpl
模板进行版本设置,并且您可以将实际的.classpath
完全保密(并且在.gitignore
中)
看。我不这么认为……我不确定。我的理解是(在打破这一点几次之后)项目通过关联文件名来查找这些项目名…因此,就Eclipse而言,更改文件名就像完全删除它们一样糟糕。好的,因为您的项目无法重命名设置文件,如果您不需要在remote中推送设置文件,还有另一种方法。我更新了我的答案,请检查它是否符合你的要求。我不这样认为…我不确定。我的理解是(在打破这一点几次之后)项目通过关联文件名来查找这些项目名…因此,就Eclipse而言,更改文件名就像完全删除它们一样糟糕。好的,因为您的项目无法重命名设置文件,如果您不需要在remote中推送设置文件,还有另一种方法。我更新了我的答案,请检查是否符合您的要求。