12

私はいくつかの学校の成績評価ソフトウェアを開発していて、プロジェクトをホストするためにGithubを使用することにしました。Ubuntuボックスでコードを作成した後、それをGithubにプッシュし、MacBookProに複製しました。MBPでコードを編集した後、Githubにプッシュバックしました。翌朝、Ubuntuボックスのリポジトリをaで更新しようとしましたが、git pullさまざまな問題が発生しました。

この状況で働くための最良の方法は何ですか?自分のリポジトリをフォークしたくないし、自分自身にメールを送信したり、リクエストをプルしたりしたくありません。Githubをマスターのように扱い、Githubから別のコンピューター上のすべての個人リポジトリにプッシュ/プルできないのはなぜですか?

4

2 に答える 2

9

あなたの問題は、git pullコマンドを発行しようとしたときに、最初にレポを作成したマシンが故障したことだと思います。

既存の git リポジトリのクローンを作成すると (2 台目のマシンである MacBook Pro で行ったように)、自動的に設定され、git pullコマンドによってリモートがローカルの変更に自動的にマージされます。

ただし、最初にリポジトリを作成してリモート リポジトリで共有する場合は、いくつかのコマンドを発行して、複製されたリポジトリと同じように自動化する必要があります。

# GitHub gives you that instruction, you've already done that
# git remote add origin git@github.com:user_name/repo_name.git

# GitHub doesn't specify the following instructions
git config branch.master.remote origin
git config branch.master.merge refs/heads/master

これらの最後のいくつかの手順は git を構成するためgit pull、このリポジトリからの future はすべてのリモート変更を自動的にマージします。

以下は、少し恥知らずな自己宣伝です。Ruby を使用している場合は、git リモート ブランチを使用してこれらすべての種類のものを処理できる Ruby ベースのツールを作成しました。当然のことながら、このツールはgit_remote_branchと呼ばれています:-)

Ruby を使用しない場合、私のツールをインストールするのはおそらく面倒です。あなたができることは、私のブログの古い投稿を見ることです。そこには、grb があなたのためにできることのほとんどが明示的に示されていました。あなたのgitノートファイルを一掃してください:-)

于 2008-11-21T03:27:49.387 に答える
5

複数の SSH 公開鍵を追加することもできます。

于 2008-11-21T13:57:26.230 に答える