2

私はgithubを初めて使用し、リポジトリを開始しようとしています。私はここでの方法を探し続けていますが、人々が言及していることは存在しないようであり、直接リンクしていません。

gitをインストールし、git init / add/commitをローカルで実行しました。うまくいきました。また、以前にreadeを最初にコミットしてWebサイトにリポジトリを作成していました。2つの別々の場所で2つの初期コミットを行ったので、同期したいものは何もないようです。だから私はダンが最初からやり直すリポジトリを削除すると思います。

その間、(可能であれば)コードの古いzipに基づいてリポジトリを起動し(リリースごとにzipで圧縮します)、リリースごとにzipをアップロードして、リポジトリ内のいくつかの履歴。

どうすればいいですか?

そして、何がそれほど多くのエラーなしで元のリポジトリを同期させたでしょうか?早送り以外の更新をプッシュしているときにエラーが発生し、サーバーでgitupdate-server-infoを実行したときにエラーが発生しました。マージすると、URLがコミットを指していないことがわかりました。

私はgitのドキュメントを見ましたが、それも私が見つけられなかったものを参照しているようでした。すべてのローカルgitコマンドは機能しているように見えますが、gitサーバー(github)との通信を伴うものは何も機能していないようです。

ガイダンスをありがとう。

4

2 に答える 2

1

これには少し面倒な作業が含まれますが、実行するのはかなり簡単です。

  1. リリースのすべてのzipファイルを収集します
  2. このリリースを「v1.0」と呼ぶ最初のリリースのプロジェクトコンテンツを、。という新しいディレクトリに解凍しますv1.0
  3. 新しいディレクトリを作成し、の内容をこのディレクトリMyProjectRepositoryに再帰的にコピーします。v1.0
  4. MyProjectRepository解凍したプロジェクトコンテンツのトップディレクトリに移動します。
  5. 行うgit init .
  6. git add <filenames>gitリポジトリで追跡したいすべてのコンテンツを追加するために使用します。(リリースには、追跡する価値のないファイル(コンパイル済み.o/.dllファイル、.pycファイルなど)が含まれている可能性があることに注意してください。GitHubでこのgitignoreファイルのコレクションを参照して、追跡する価値のないファイルの種類を確認してください。すべてのファイルを追跡する価値があることが確実な場合はgit add -f *、プロジェクトのルートディレクトリから)を実行して、すべてのファイルとディレクトリを再帰的に追加できます。
  7. 追跡するすべてのファイルを追加したら、を実行しgit commit、適切なコミットメッセージを追加します。思いつかない場合は、「バージョンのコミット」とだけ言ってください。
  8. プロジェクトの次の時系列リリース(「v2.0」と呼びます)の内容を、という新しいディレクトリに解凍しますv2.0
  9. v2.0direcotyrの内容をMyProjectRepositoryディレクトリに再帰的にコピーします。
  10. v1.0に存在していたv2.0で削除されたファイルに注意してください。これは、UNIX / GNU Linuxコマンドを使用diffしてディレクトリの内容(たとえば)を比較しdiff v1.0 v2.0、「v1.0でのみ」という行を探すことで実行できます。これらのファイルごとに、ディレクトリでaを実行git rm <filename>しますMyProjectRepository
  11. MyProjectRepositoryで、を実行git statusして何が変更されたかを確認します。この次のリリースにあり、Gitによって追跡されていない新しいファイルに注意してください。を使用して追跡する必要があるものを追加しgit add <filename>ます。(diff前の手順の結果を使用して、これらのファイルを識別することもできます。)
  12. v2.0で削除されたすべてのファイルを削除し、v2.0で表示された新しいファイルを追加したことを確認したら、先に進んで実行しgit commit -a、適切なコミットメッセージを追加します。
  13. すべてのリリースをカバーするまで、後続のリリースごとに時系列で手順8〜12を繰り返します。これは面倒な場合があるため、メジャーリリースに対してのみこれを行うことを検討してください。
  14. すべてのリリースでこれを実行すると、プロジェクトをGitHubにプッシュする準備が整います。新しいプロジェクトを作成するためのGitHubの指示に従い、次にGitHubからも提供されるプロジェクトをプッシュするための指示に従います(行き詰まった場合は、この回答の手順を使用しますが、手順をスキップしgit initます-すでに手順でこれを行っています5)

これで、GitHubでホストされているプロジェクトのリポジトリが作成され、他のコンピューターに複製できるリリース間の変更の履歴が含まれます。

于 2012-08-24T14:56:00.943 に答える
0

あなたが行ったことは、2つの独立したgitリポジトリを作成したと思います。1つはローカルに、もう1つはGitHubにあります。彼らはお互いを知らないので、彼らは一致するつもりはありません。

やるべきことは、githubにリポジトリを作成し、それをローカルに複製し、変更を加えてから、githubのリモートにプッシュすることです。

于 2012-08-24T14:56:28.827 に答える