2011-11-22 17 views
3

マスターからテストまで常にコードを引き出す必要があります。git pullを実行してすべての変更を無視する方法

私がいくつかのmvnコマンドを実行すると、ファイルは上書きされますが、何もコミットしません。

私はプルコマンドを実行し、それを持っているので、私が引っ張った最新のコミットを使うことができます。

Rebaseが動作していないようです。

+1

ローカルの変更を日常的に放棄しているワークフローでは、問題が発生する可能性があります。 Mavenタスク、Gitリポジトリ、またはその両方で、ビルドの実行がバージョン管理下にあるファイルを上書きしないように、物の構造を変更することはほぼ確実です。チェックインされたファイルのコピーには、 ".dist"や ".changeme"のような接尾辞が付いています。 –

答えて

4

あなたは

git reset --hard HEAD 

を行い、その後、あなたは自由にgitの本の中で続きを読むことができます

git pull 

引くことができます - あなたが追跡することになっていないファイルを追跡しているhttp://book.git-scm.com/4_undoing_in_git_-_reset,_checkout_and_revert.html

+0

は機能しませんが、引き続き同じ問題が発生します。 '追跡されていないツリーファイルはチェックアウトで上書きされます' – user979587

+0

試してみてください:git reset --hard ORIG_HEAD –

1

。 Do not :)

患者:「医者、これを行うと本当に痛い」 Doctor:「しないでください」

2

ビルド結果を上書きしているファイルはありますか?一般に、コンパイルされたバイナリファイルをソース管理にコミットするべきではありません。

プロジェクトの設定方法を少し変更する必要があるかもしれませんが、.gitignoreファイルを使ってgitに送信しないファイルやディレクトリを指定することができます。このファイルをgitに送信すると、ignore設定をグローバルにするか、この連続的な統合マシンに対してローカルに設定することができます。

基本的な.gitignore(Source):

# Can ignore specific files 
.DS_Store 

# Use wildcards as well 
*~ 
*.swp 

# Can also ignore all directories and files in a directory. 
tmp/**/* 

別、hackierオプションは以前のビルドに変更しているファイルがバックアップになり、ビルドの完了時にそれらを復元します。そうすれば、ブランチとの同期が外れることはありません。

+1

+1。バージョン管理をしたくないファイルは無視してください。それらを "上書き"しないでください。 –

関連する問題