2012-06-18 11 views
11

gitでローカルファイルを更新したいだけです。しかし、私が取得しようとするたびに、私は特定のファイルを最初にコミットする必要があると言ってエラーをプルしようとします。コミットを使わないでローカルファイルを更新する方法は何ですか?ここ git pull(ローカルファイルの更新のみ)

$ gitの鍵のパスフレーズを入力します を引っ張って、エラーメッセージである「/c/Users/me/.ssh/id_rsa」: は4dsdSe6e..70fb5b6 エラーを更新:あなたのローカルな変更を以下にファイルはマージによって上書きされます: grails-app/conf/DataSource.groovy マージする前に、変更をコミットまたは隠してください。 中止

答えて

19

したくない場合はまず、との変更をコミットコミットするには、変更を隠す必要があります。

git stash save "Changes I don't want to commit yet" 
git pull 
git stash pop 

最初の行は変更をスタックに置き換え、コードを最後のコミットに戻します。そこから、普通のように引っ張ることができます。あなたが引っ張ったら、隠し場所の変更をあなたのコードにポップして戻してください。これはコードをコミットすることなくプルを行います。スティッキングの詳細については、hereをご覧ください。

+0

ありがとう、これは私が必要としていたものです。 – LynAs

+2

問題ありません。ただし、変更をコミットすることは、リモートリポジトリにプッシュすることと同じではありません。初期のコミットをgitで行うのは良い習慣です。あなたがCVSのバックグラウンドから来ているのであれば、これは奇妙に思えるかもしれませんが、gitを非常に強力かつ汎用性のあるものにしています。 – bilalq

+0

ありがとうございました – LynAs

3

変更を削除するファイルをいくつかプルしようとしています。その後、他の人を引っ張る

git commit -a -m "I have changed XXXX" 

git pull 

解決するために何の問題ならば、あなたはあなたの変更をプッシュすることができます

git push 
関連する問題