2012-04-04 4 views
1

を傷つける神経質私は私のハードドライブにインストールする貴重なを持っている:のgitでブランチを作成するが、既存の安定したマスター

の/ var/www /のlukevan/PO2/PO

をこれは "PO" でありますプロジェクト。私たちは顧客のためにそのバージョンを維持したいと思っていますが、現時点で安定したPOプロジェクトに合併する準備が整うまで、しばらくの間不安定な新しいブランチを作成する必要があります。私はthis documentationを見直しましたが、私の貴重な/ var/www/lukevan/po2/poフォルダでこれを実行すべきかどうか、あるいは私の貴重な/ var/www/lukevan/po2/poフォルダ?

答えて

0

は、私がやったことです/ var/www/lukevan/po2/poで動作し、必要に応じて安定したmasterブランチを作成し、必要に応じて/ var/www/lukevan/pof2/poで作業することができます。最新のファイルをダウンロードし、ハックしてからgit addを実行し、git commit -mを実行してgit pushを実行すると、 "git pull origin master"または "git pull origin pof2"を実行できます。 pof2のマスターとgitプッシュ起点pof2の起点マスター。

1

あなたのケースでは、あなたのレポをどこか安全にクローンしてクローンで作業する必要があります。

このようにして、元のレポの作業ディレクトリには影響しません。

+0

私はクローンのコマンドを研究します。私はまだgitの周りの緑です。 – Volomike

0

バージョン管理システムの利点の1つは、変更を元に戻すことができる点です。それについてあまり心配しないでください。

+0

/var/wwwが(その名前が示すように)本番サイトである場合を除きます。 –

+0

彼はそれが彼のハードドライブにインストールされていると言いました。それは生産ではないことを願っています。 –

+0

@ColinHebert、そうではありません。この場合、ローカルのワークステーションWebサーバーです。 – Volomike

0

"貴重な"フォルダのクローンを作成し、クローンにブランチを作成します。何かがひどく間違っている場合は、元のレポを使用し始めることができます。

これはバージョンコントロールシステムの使用の全体的なポイントですが、時にはそれは少し編集的であることを傷つけません。

0

Gitは水銀ではありません。このリポジトリを再クローンする必要は全くありません。これは、ブランチが作成されたものです。つまり、他のブランチに変更を加えることを心配する必要がない、分離して作業できるシームを作成する可能性を与えます。新しいブランチを作成し、ハッキングとコミットを開始するだけです。

git checkout -b experimental 
// hack hack hack 
git add foo 
git commit -m 'changed foo' 

は今の/ var/www /のlukevan/PO2/PO内のファイルは、彼らがmasterブランチ上のものを変更していない、実験的なブランチに変更されました。マスターに戻すと、ファイルはマスターブランチでどのように見えるかによってチェックアウトされます。

クローニングは高価な操作である。ブランチを作成するのは、ファイルのオーバーヘッドが41バイトのみで、超高速で軽量です。 Gitはブランチングに関しては規則を定めています。これを使って !

cd /var/www/lukevan 
mkdir pof2 
cd pof2 
git clone [email protected]:po.git 
ls 
# a po folder was listed -- that's the MASTER of our project, called "po". 
git branch pof2 
git checkout pof2 

I:Webサーバーを持っている私の開発ワークステーション上で

:それはこれを処理するための最も最適な方法だ場合、私は知りませんが:)

ここ
+0

私の貴重な/ var/www/lukevan/po2/poフォルダとは別のディレクトリにこれを行う方法はありますか? – Volomike

+0

別のフォルダが必要な理由がわかりません。作業ツリーのファイルは、リポジトリのビューにすぎません。ブランチはフォルダとは関係ありません。ブランチを作成してコミットを開始するだけです。 masterに戻すと、ディスク上のファイルはmasterブランチ上のバージョンと一致し、experimentalブランチで行った変更はmaster上のファイルを変更しません。 – ralphtheninja

関連する問題