2

そのため、OSを再インストールしましたが、今はgitのジレンマに直面しています。

私はウェブ上に既存のgitリポジトリを持っていますが、サーバーyaddayaddaなどで動作していなかったために特に変更したことがいくつかあります。

私は今、非常によく似たリポジトリを持っていますが、かなりの数のコアの変更があります。これが私が行う方法を知る必要があることです:

新しいフォルダを使用するためにリポジトリを再初期化したいのですが、サーバー上の別のファイルを上書きします。私のフォルダーには.gitが含まれていないので、作成する必要がありますが、既存のgitリポジトリに変更をオンラインで上書きするにはどうすればよいですか?

git push --forceに近いですか?しかし、クローンを作成せずに同じリポジトリをこのフォルダに初期化するにはどうすればよいですか(変更を上書きしたくないのでやりたくないことです)

ありがとう!

4

1 に答える 1

2

ここで(少なくとも私にとって)自然なことは、プロジェクトの履歴を保持しながら、これらの変更を新しいコミットに含めることです。--forceを押す必要はありません!

これを行うには、最初にリポジトリのクローンをローカルマシンに戻す必要がありますが、上書きされないように別のディレクトリに配置します。

git clone git://myrepo.com clonedrepo

次に、ローカルリポジトリの「作業コピー」をコピーします。

cp -r workingdir clonedrepo

workingdir内のファイルを削除した場合は、宛先ディレクトリで手動でファイルを削除する必要があります。最後にステージングしてコミットします。

git add . && git commit -m "details on what changed"

履歴が書き換えられていないので、普通にプッシュできます。

于 2012-09-17T06:01:42.087 に答える