2012-02-07 9 views
0

Xcodeでは、他の人のプッシュを引っ張ってローカルコピーとマージしました。しかし、今引っ張られたコピーはストーリーボードを壊してしまった。最悪の事は、私たちが誤って破損したファイルをリモートのrepoにプッシュしたことです。今私はこの問題を解決する方法はありますか?マージ中にストーリーボードが壊れた

私たちはGitのインタフェースとしてSourceTreeを使用しています。

私たちのメンバーの一人は、サーバーから彼のコピーに破損したデータを取得していないため、最後の作業コピーを持っています。

この場合の解決策はありますか?ありがとう

+0

リモートリポジトリの履歴に警告することは可能ですか?それを完全にコントロールできますか? –

+1

プロのヒント:ストーリーボードとXIBをバイナリファイルとして扱います。 :) –

答えて

2

申し訳ありません申し訳ありませんが、私はあなたに正確なコマンドを与えることができるだけでは十分ではありませんが、特定のリビジョン/コミットにファイルを戻すために入力できるgitコマンドがあります。あなたがウェブ上で狩りをするなら、それらを見つけてファイルを元に戻すことができるはずです。

Gitコマンドラインを使用する必要があるかもしれません。

これはReset or revert a specific file to a specific revision using Git? を助け、このRollback file to much earlier version using Git

+0

ありがとう私は私たちの作業コピーの1つをコピーして貼り付けて、それをサーバにプッシュしてしまいました...私たちは軌道に戻っています:) – doNotCheckMyBlog

+0

@Wayne Hartmanのプロジェクトファイルとxibに関するコメントは良い点です。プロジェクトファイルに変更をマージすることは可能ですが、推奨されていません。私はIBM WebSphereのツールと同様のことに遭遇しました。問題の核心は、ファイルがXML(mergable)ですが、ツールで使用される一意のキーとIDが含まれていることです。これは、XMLの構造がわからないと問題になる可能性があります。 – drekka

0

プル、あなたはちょうどそのコミット元に戻す必要があるので、他の変更と同様に歴史にコミットされてマージします。最後のコミットのコミットと作業ツリーが、前に復元削除するのgitコマンドは次のとおりです(Delete commits from a branch in Gitから)

git reset --hard HEAD~1 

この変更は、あなたのサーバーまで押し戻すことができます。

関連する問題