1

を実行するgit statusと、見られたくない無関係なファイルがあります。

例えば:

M .gitignore
M as3-remote / .project
M Perspective / swc / .project
M Perspective / swf / .project Mcheduled
-translator-framework / src / main / java / Importer.java Dcheduled
-translator-framework / src / main /java/TranslatorTest.java
M ui-mecogis / swf / .project

.projectsを含むように.gitignoreを編集してみました。.gitignoreは次のようになります。

.classpath
.project
.settings
* .log
nbactions.xml
target
.DS_Store

スケジュールされたtranslator-framework内の変更のみを追跡および監視したいので、その特定のフォルダー内の.javaファイルのみに焦点を合わせたいと思います。追跡されていない、または追跡されていない、無関係なものを他に表示したくありません。どうすればいいですか?

4

3 に答える 3

2

私はそれがあなたが必要としているものだと思います:

# in .gitignore
*
!scheduled-translator-framework/
!scheduled-translator-framework/*

と:

# in scheduled-translator-framework/.gitignore 
/*
!*/
!*.java

.gitignoreプロジェクトのルートで使用する:

  1. すべてを無視します。
  2. ディレクトリを無視しませんscheduled-translator-framework/
  3. 内部のすべてのファイルを無視しますscheduled-translator-framework/(このディレクトリ内のファイルは後で処理します)。

ディレクトリで使用.gitignoreする:scheduled-translator-framework/

  1. このサブディレクトリ内のすべてを無視します。
  2. 内部のすべてのサブディレクトリを無視しますscheduled-translator-framework/(次のステップが機能するために必要です)。
  3. *java現在のディレクトリ(つまり)内のすべてのファイルscheduled-translator-framework/とすべてのサブディレクトリを無視します。

誤って、追跡したくないファイルの一部をインデックスに追加したりコミットしたりした場合は、次の方法でステージングを解除してリポジトリから削除できます。

git rm --cached -r file/or/directory/path
于 2012-06-26T22:32:33.207 に答える
1

gitignore(5)のマニュアルページから:

gitignoreファイルの目的は、gitによって追跡されていない特定のファイルが追跡されないままになるようにすることです。

すでに追跡されているファイルのコミットされていない変更を無視するには、を使用しますgit update-index --assume-unchanged

現在追跡されているファイルの追跡を停止するには、を使用しますgit rm --cached

于 2012-06-26T22:14:03.950 に答える
1

git status.projectフォルダーは既に追跡されているため、表示されます。
それらをリポジトリから削除する必要があります。git rm --cached a/b/.project

特定のフォルダにあるファイルを除くすべての*.javaファイルを無視するには、.gitignoreは次のようになります。

*.java  
!a/specific/folder/*.java
于 2012-06-26T22:16:40.420 に答える