0

私は正直に言うと、私の経歴はSVNであり、gitは私を完全に混乱させ、gitのドキュメントは私には意味がありません。

同僚からのいくつかのコミュニケーションから、彼らが取り組んできたものからリモートリポジトリに追加のディレクトリとファイルがあることを知っています。私はそれらをローカルで見ません。地元の作業スペースにこれらすべての変更を反映させたいと思います。すべてのファイルの名前はわかりません。数百のファイルがある可能性があります。

クローンのようなものですが、ローカルコピーが存在することについて文句を言いません。私はあらゆる種類のコマンドを試しましたが、「致命的なエラー」または「すでに最新」のいずれかがわかりませんでした。

これまでのところ、私はいくつかの既存の作業を上書きして失うことに成功しました。私がどのようにそれをしたのかわからない-バージョン管理はこれを決して起こさせてはならないと思った!

4

1 に答える 1

2

を使用する場合git、常にリモートデポのクローンがあります。

大まかに同等なのsvn updategit fetch、リモートデポからすべての新しいコミットをフェッチし、その後にaを続けるgit merge remote/masterことです(または、git pullこれら2つの手順を実行するコマンドを使用できます)。git merge一般に、変更を行う前に、またはgit pull(安全に)すべての変更をローカルでコミットすることをお勧めします。git fetchこれにより、変更がリモートブランチとマージされ、競合が発生する可能性があります。

大まかに同等なのsvn commitgit push、変更をリモートデポに送信し、そこでブランチヘッドへの参照を更新することです。プッシュを実行する前に必ずマージを実行する必要があります。そうしないと、誤って同僚の変更を削除する可能性があります。ただし、チームには別のワークフローがある場合があります(統合を担当する1人の担当者にパッチを送信します)。

から来ている場合svn、理解する最も簡単な方法gitは、常にブランチで作業しており、チームの他のメンバーとの共有は、参照ブランチを自分のものに、または自分のものを参照ブランチにマージすることによって行われると考えることです。

それ以外の場合は、 Gitの本または少なくともGitSVNのクラッシュコースを読むことをお勧めします。

于 2013-01-23T19:58:21.007 に答える