0

知識が不足しているため、バージョン管理を使用していませんが、Gitを使い始めたばかりなので、の基本的なコマンドを知っていますgit add {filename}, git commit -u {filename}, git push origin master

Gitの前に変更を追跡する方法として、作業した各ファイルの複数のコピーを作成していました。たとえば、元のファイルの名前はabc.php、最初の変更の名前はabc_20130101.php、2番目の変更の名前はabc_20130102でした。 phpなど

これらは一定期間にわたる変更であり、複数のファイルがあることを考えると、GitHub、BitBucketなどのホストされたサービスにこれらを移行するための最良のアプローチは何ですか。

単一のリポジトリを作成してリポジトリのクローンを作成しますか?実際には異なるバージョンであるため、ファイルをシングルプッシュとしてコミットすることを避けたいので、どうすればよいですか?最善のアプローチは何ですか?どうすればいいですか?

4

2 に答える 2

2

David Culp の答えは素晴らしく、私はタイピングが少し遅いです。とにかく私のものはここに置いておきます。

古いファイルはそのままにして、アーカイブとして保管することをお勧めします。今日から Git の使用を開始し、ファイルへの新しい変更を追跡します。

本当に開発履歴を Git に取り込みたい場合は、新しいリポジトリで次のようにします。

  • abc.php の最も古いバージョンをリポジトリにコピーし、abc.php という名前 (つまり、ファイル名から日付を削除) であることを確認し、同じ日付の他のファイルについても同じようにします。
  • するgit add .
  • するgit commit -m "Files from 2013-01-01"
  • バージョンごとに時系列で繰り返します
  • GitHub / BitBucket にプッシュ

現在のバージョンを最後に追加してください。

注: 1 人で作業する場合、GitHub/BitBucket などのオンライン サービスは必要ありません。Git は、PC 上のスタンドアロン リポジトリで問題なく動作します。

于 2013-01-15T22:44:59.687 に答える
0

プロジェクトの履歴を git リポジトリに反映させたい場合は、多少の労力が必要になります。

基本的な手順は、日付を持つすべてのファイル (アーカイブ ファイル) のリストを取得することです。これを使用して「リビジョン」のリストを作成し、次の操作を行います。

for each revision
    recreate the project as it was in that state (renaming files so they don't have dates)
    copy the files to the repository
    add files to index
    commit files to repository

最終的には、プロジェクトの開発を表す一連のコミットになります。最終的にいくつのリビジョンを作成するかによっては、これは大変な作業になる可能性があります。

作業の大部分をスクリプト化できるかもしれませんが、手動で行う方が簡単になる可能性があります。

ただし、これにより、ファイルが変更された日付ごとにコミットされたリポジトリが作成されます。1 つのプロジェクト機能に関連する「リビジョン」を組み合わせることで、コミットの数を減らすことができる場合があります。

于 2013-01-15T22:27:46.300 に答える