2013-12-11 42 views
9

私はfile.txtをローカルで、別のコンテンツを持つGitで作業する必要があります。私はGitにそのファイルが変更されたことを教えないようにしたい。Gitの既存ファイルを無視するには?

これは可能ですか?

+1

が重複する可能性を構成ファイル](http:// stackoverflow。com/questions/1396617/committing-machine-specific-configuration-files) – Senseful

答えて

13

を想定します。 Here's a good explanation why

のでgit update-index --skip-worktree file.txt

TLDR。 --assume-unchangedは、(SDKのように)変更されないファイルのための性能のためです。 --skip-worktreeは、リモートに存在するが、ローカル(変更されていない)変更を行うファイル用です。

+0

あなたは正しいです、thx – kassie

+1

答えに完全なコマンドを追加してください( 'git update-index ...');私たちの何人かは本当のgit初心者で、私はあなたのことを補うために@ janosの答えを読む必要がありました;) –

+0

@NicolasMiari done。提案していただきありがとうございます。 –

2

.gitignoreファイルを変更することはできません(git自体にチェックインされているため).git/info/excludeを使用することを検討してください。

11

実際にファイルが変更されていないことを「ふり」したいことがありますか?あなたはこのようにそれを行うことができます。

git update-index --assume-unchanged file.txt 

は後に、これを元に戻すには:

git update-index --no-assume-unchanged file.txt 

は、このようにマークされたファイルのリストを表示するには:

git ls-files -v | grep '^[a-z]' 

UPDATEを

コメントが指摘しているように、これはあなたが やってみたいです。 better answerが投稿されました。@Tom Augerが代わりに使用しています。 、これはこれを行うことによって、[私は思うEGitプラグインで]行うことができますEclipseのルナで

+0

うん、うまくいった、ありがとう! – kassie

0

: ファイルを右クリック - >チーム - >詳細は - >実際には、あなたが--skip-worktree、ない--assume-unchangedをしたい変わらない

1

enter image description here enter image description here

必要なのはunstagedファイル]セクションで、ファイル名だけの右側にsourcetreeにmoreボタンをクリックすることです。 ignoreをクリックし、そのファイルまたは同じタイプのすべてのファイルに対して、ソースツリーで目的のアクションを実行させます。

1

SOURCETREEターミナルコード

ファイルを無視します:

git update-index --skip-worktree index.php 

エキスは、ファイルを無視:

git update-index --no-skip-worktree index.php 

リストのファイルを無視:[コミットマシン固有の

git ls-files . --ignored --exclude-standard --others 
+0

私はSourceTreeを使用しているので私のための良い答え。これは私のために働いた。 – pixelmeow

関連する問題