2016-09-01 6 views
0

Gitリポジトリに保存されたコードにローカルな変更を加えました。私はもうこれらの変更が必要ないので、それらを破棄してgithubからきれいなコピーを取得したいと思います。Git - ローカルの変更をリセットする

私がGitを引っ張ったときに、マージ競合エラーが発生しました。

だから、私は

git reset --hard 

をしましたが、それは助けにはなりませんでした。私はまた、

git stash 

を試してみましたが、私はgithubのからプルしようとすると、まだ、それは私がそうすることはできません。

誰かがgithubから最新のコードを入手する最良の方法を提案できますか?私はちょうどローカルファイルを削除し、次にgit pullを行うべきですか?

+0

それは素晴らしいことです取得。正確には「マージ競合エラー」とは何かgithubは「あなたがすることを許可していません」。 – Paul

答えて

0

リモートでプッシュされた最新のコードを取得したい場合は、それを行うことができます。

rm -rf ./gitProject 

git clone yourRemoteRepo 
+1

良い方法がない限り、私はローカルプロジェクトの削除について懐疑的です。削除を行うと、リポジトリに含まれていないファイル(.gitignoreに記載されているファイル)も削除されます。私が望むのは、ローカルのコピーがリモートリポジトリにあるものを上書きすることだけです。 – swati

0

してみてください。gitのリセットとgitのチェックアウトとの違いの大きな議論について

git checkout -f 

、以下を参照してください

私はどうなる

https://git-scm.com/book/en/v2/Git-Tools-Reset-Demystified#_git_reset

+0

私はgit checkout -fを実行してgit pullを実行しましたが、それでもまだConflictsには不満があります。リモートコピーにあるものがあれば、ローカルコピーを上書きすることができます。マージをしたくない。 – swati

+0

私が推薦したコマンドは、あなたのローカル変更を取り除くことはありません。これを行うには、gitディレクトリ全体を一掃して再度クローンすることができます。あるいは、このスレッドを見て:http://stackoverflow.com/questions/1628088/reset-local-repository-branch-to-be-just-like-remote-repository-head –

1

git reset --hard {remote_name_here}/{branch_name_here}

+0

git reset --hard masterを実行した後、いつ私はgitを引っ張った、それはまだ紛争に不満し、私にマージするように頼んだ – swati

+0

それは私がリモートを使用して指定された理由です。リモートにコマンド(おそらく 'origin')を追加すると、リモートから引き出されたバージョンが使用されます。 – AgentAntelope

0

あなたはすべてのローカルの変更を除外し、githubのからのものだけを取得したい場合は、ちょうどそのように、あなたの.gitフォルダを削除し、それを再初期化することができます:あなたは、あなたが何かのエラー投稿する場合

rm -rf .git 
git init 
git remote add origin http://yourGithubUrl.com 
git pull 
+0

これがなぜ落とされたのか理解したいですか?私がこれをしたら、私が遭遇する可能性のある挑戦はありますか? – swati

+0

まあ、私はどちらかのポイントを見ることができません。 これはあなたのプロジェクトの新しいコピーです。 ご不明な点がある場合は、プロジェクトフォルダを複製して、恐れなしに新しいフォルダにテストすることができます –

関連する問題