2016-04-01 3 views
-2

私の質問は非常に基本的ですが、それでも私にとっては不明です。私は、複数の開発者と一緒にレールプロジェクトに取り組んでいます。それらのすべてがプロジェクトをプルまたはプッシュできます。だから私のシナリオを説明しましょう。私のコードを初めて変更し、他の開発者も変更を加えている場合、プロジェクトをプッシュしようとすると私はそうすることができます。しかし、他の開発者は、プロジェクトを引き出す際に問題に直面します。その後、変更を加えてプロジェクトを引き出すことができれば、プロジェクトをプッシュすることも、プロジェクトをプルすることもできません。コードを引っ張ったり押したりする際の問題

git add . 
git commit . 
git pull origin master 

が、エラーが警告が来る:これは、我々は最初のプロジェクトをプッシュする方法であるバイナリファイルにをマージしたり、私がgitのプルは「人跡未踏作業ツリーファイル 『何とか』で失敗し、エラーがで上書きされます得ることができませんmerge

+0

を解決すると思います。バイナリファイルをコミットしたくないかもしれません。 –

+0

私は実際にチュートリアルを見たことがありますが、なぜ私は彼女にエラーを投稿したのですか? –

+0

あなたは機能枝で作業する必要があります –

答えて

1

あなたとあなたの友人がファイルの同じ行に変更を加え、gitがどちらを取るかを決めることができないので、問題が起こっています。だから、この場合、最初にコードを保存するために隠れて行く方がよい。 は、コードは次のようになります -

git stash :- To save your code 

git pull :- To pull the code from git 

git stash apply :- To merge your changes with the pulled files, if any merging error is coming then it will hit an error saying merge-conflict,you have to resolve that manually. 

git add :- To add the files 

git commit -m "Commit message" :- To commit it 

git push :- To push to the repo. 

私はあなたのセットアップが混乱している、Gitのチュートリアルを確認してください、これはあなたの問題

0

git checkoutは、このような場合に--oursまたは--theirsオプションを受け入れます。あなたがマージ競合を持っている、とあなたはちょうどあなたがマージされている枝からファイルをしたい知っているのであれば、あなたが行うことができます:

$ git checkout --theirs -- path/to/conflicted-file.txt 

のファイルのバージョンを使用します。あなたのケースでは、ファイルは、遠隔地の作業ディレクトリに「何とか」ですResolving a Git conflict with binary files

:同様に、あなたが知っていれば、あなたのバージョン(ないでマージされているもの)をしたいあなたは

$ git checkout --ours -- path/to/conflicted-file.txt 

REFを使用することができます。だからあなたはそれらの1つを保つことができます。

関連する問題