1

ここで説明するgit-1.7.3.4_centos5.2の本番サーバーがあり、git1.7.7.1のローカルマシンがあります。必要なのは、サイトを開発して本番サーバーにアップロードできるローカルサーバー上のコピーです。コンテンツを変更できる別の人がいるので、私も変更をプルする必要があります。どうすればgitでそれを解決できますか?(最も実際のコードは現在私のローカルマシンにあります。)

私はいくつかのテストを行いました。空のリポジトリのクローンを作成し、その後サーバー上のリポジトリを変更しました。リモート/ダウンロード(git gui)でダウンロードできませんでしたが、チェックアウトで成功しました。プッシュも機能しませんでした。どうすればそれらを操作可能にすることができますか?

4

1 に答える 1

1

2つのリモートを定義する必要があります。

必要なのは、サイトを開発して本番サーバーにアップロードできるローカルサーバー上のコピーです。

それは簡単です

git clone http://www.your_prod_server.com/git/your_bare_repo.git

これにより、リポジトリのクローンが作成され、「origin」という名前のリモートが定義されます。ベアリポジトリなのでプッシュできるようになります。「「ベア」リポジトリのすべて-何を、なぜ、そしてどのように非ベアプッシュを修正するか」
を参照してください。非ベアリポジトリにプッシュする危険性については 、 「GIT:プッシュ後、リモートリポジトリにファイルが削除されたものとして表示される」も参照してください。

Gitでリモートリポジトリにプッシュしても、そのリモートリポジトリの作業コピーは更新されません。
これは、作業コピーが最後にプッシュしたバージョンと同期していないことを意味します。


コンテンツを変更できる別の人がいるので、私も変更をプルする必要があります。

「他の人のリポジトリアドレス」を指すリモートを追加する必要があります

git remote add otherguy http://otherguy_server/other_guy_repo

その同僚のレポがむき出しでなくても、そこからフェッチして、レポで彼の変更を取り戻し、ローカルブランチにマージすることができます。

于 2012-05-13T12:40:26.820 に答える