2GB USB ドライブでのバージョン管理
-
01-07-2019 - |
質問
学校の仕事のために、私はコンピューターを頻繁に切り替えます (研究室からラップトップ、そして図書館へ)。このコードを何らかのバージョン管理下に置きたいと考えています。もちろん、問題は、私が使用しているコンピューターに常に追加のソフトウェアをインストールできるわけではないことです。サムドライブに保存できるバージョン管理システムはありますか?これを取り付けるための 2GB ドライブがありますが、必要に応じて、より大きなドライブを入手できます。
参考までに、私が取り組んでいるプロジェクトは特に大規模なものではありません。
編集: これは Windows の下で動作する必要があります。
編集 II: 結局、私が選んだのはバザールでした。TortoiseBzr を使用するとさらに良いです。
解決
使用できます ポータブルPython そして バザール (Bazaar は Python アプリです)。私は、非常にシンプルなため、私自身の個人的なプロジェクトに Bazaar を使用するのが好きです。さらに、Python は移植可能であるため、移植可能です。必要なのは、Portable Python インストールにその依存関係もインストールすることだけです。
他のヒント
これを Git で行います。単純に、ディレクトリの Git リポジトリを作成します。
git-init
git add .
git commit -m "Done"
スティックを挿入し、その上のディレクトリに cd して (-o ループでマウントする大きな ext2 ファイルがあります)、次の操作を実行します。
git-clone --bare /path/to/my/dir
次に、そのスティックを他のコンピュータ (自宅など) に持っていきます。スティック上で直接作業することも、もう一度クローンを作成することもできます。ハードディスク上のディレクトリに移動し、次のようにします。
git-clone /path/to/stick/repos
変更が完了したら、「git Push」を実行してスティックに戻し、仕事に戻ったら、もう一度「git Push」を実行して変更をスティックから職場のコンピュータに移動します。これを設定したら、「git pull」を使用して変更のみをフェッチし(クローンを作成する必要はありません。初回のみ)、「git Push」を使用して変更を逆にプッシュできます。
この利点は、「git log」ですべての変更を確認でき、その間に両方の場所で変更があった場合でも、無関係な作業の同期を維持できることです。
コマンドラインが気に入らない場合は、gitk や git-gui などのグラフィカル ツールを使用できます。
ダルクス この目的には最適です。
- 他のプラットフォームを保証することはできませんが、Windowsでは、ドライブを維持できる1つの実行可能ファイルです。
- 最も重要なことは、そのインタラクティブなコマンドラインインターフェイスは素晴らしく、非常に迅速に直感的になります(私は今ではそれらを欠くVCでインタラクティブなコミットを本当に見逃しています) - 通常のワークフローの一部として多くのコマンドを暗記する必要はありません。これが、私が個人プロジェクトにGitで使用する主な理由です。
セットアップ:
darcs init
darcs add -r *
darcs record -am "Initial commit"
ラボ マシン上にリポジトリを作成します。
darcs get E:\path\to\repos
変更内容を確認する:
darcs whatsnew # Show all changed hunks of code
darcs whatsnew -ls # List all modified & new files
変更から新しいパッチを対話的に作成します。
darcs record
パッチをドライブ上のリポジトリに対話的にプッシュします。
darcs push
大規模なプロジェクトでは遅いことが知られていますが、これを使用した中小規模の個人プロジェクトではパフォーマンスの問題が発生したことはありません。
インストールは必要ないので、ドライブを省略して Web から darcs バイナリを取得することもできます。ドライブを忘れた場合は、Web スペースに保存しているミラーから作業したいリポジトリのコピーを取得します。次に、パッチをファイルとして作成して自分に電子メールで送信します。
darcs get http://example.com/repos/forum/
# Make changes and record patches
darcs send -o C:\changes.patch
追加のリソースを追加するためだけに スティックによる転覆. 。これを 4GB USB ドライブにセットアップしましたが、非常にシンプルで手間がかかりません。
と思ったので、バザールを試してみたくなってきました。
アップデート:USB ドライブに PortablePython をセットアップしました。簡単ですが、そこにバザールを入れています...依存関係を次々と作成し、svn が動作するようになったので、私はあきらめました。
誰かが簡単なポータブルインストーラーを知っていれば、私は素晴らしいと思います。
フォッシルがおすすめです http://www.fossil-scm.org/
含まれています
- コマンドライン
- DVC
- クロスプラットフォーム (そしてコンパイルが簡単)
- 「autosync」コマンドを使用すると、バックアップとの同期という重要なタスクが簡単になります。
- バックアップサーバーの構成は簡単ではありません。
- 学びやすい/使いやすい
- とても役立つコミュニティ
- Wiki とバグトラッカーを含む Web UI。
- 3.5Mb、単一の実行可能ファイル
- リポジトリとして 1 つの sqlite データベース
そこに Subversion バイナリを置くこともできます。バイナリのサイズはわずか 16 メガなので、いくつかのリポジトリにも十分なスペースがあります。コマンドラインから公式バイナリを使用するか、グラフィカルツール( TortoiseSVN) リポジトリ ディレクトリにコピーします。気が向いたら、SVNSERVE アプリケーションを自動実行するようにドライブを改造して、ドライブを接続した瞬間にあらゆるコンピュータを軽量の Subversion サーバーにすることもできます。
このプロセスに関する手順をいくつか見つけました ここ.
私はサムドライブで Subversion を使用していますが、公式バイナリはドライブから直接動作します。このトリックの問題は、これを機能させるか、バッチ ファイルを実行できるようにするには、コマンド ラインにアクセスする必要があることです。もちろん、サムドライブ上のファイルは料金を払ったサーバーに同期します。Web 上にホスティング スペースを確保したくない場合は、いつでもデスクトップ上でリポジトリをホストできます (file:/// プロトコルを使用)。
この答えを言うとリンチされるでしょうが、Windows では動作します。 RCS.
あなたはただ単に RCS
コードが含まれる各ディレクトリ内のディレクトリ。チェックインの時間が来たら、 ci -u $FILE
. 。(バイナリ ファイルでも実行する必要があります rcs -i -kb $FILE
最初のチェックイン前に。)
内部 RCS
ディレクトリはたくさんあります ,v
CVS と互換性のあるファイルがあるため、いつかその CVS に「アップグレード」したい場合があります (他の投稿者が言及しているそこから他の VCS システムにアップグレードすることもできます)。:-)
Subversion は何とか機能するだろう。見る 糸
個人的には、すべてを 1 台のマシンに保存し、リモート デスクトップをそのマシンに入れることを好みます。
私の耳には、フラッシュ メモリとバージョン管理は良いアイデアとは思えません。特に、多数の小規模なディスク操作 (マージ、前後の戻しなど) を行うさまざまなバージョン管理操作を多用する場合は、メモリがすぐに消耗してしまうのではないかと心配しています。
少なくとも、ドライブに障害が発生した場合に備えて、人間ができる限り頻繁にリポジトリをバックアップするようにしてください。
Milan Babuškov の答えに従って、私は GIT を使用しています。
(1) リポジトリ作成とコミット(会社のPC上)
mkdir /home/yoda/project && cd /home/yoda/project
gitの初期化
git add 。
git commit -m "完了"
(2) USB スティックを挿入し、リポジトリのクローンを作成します。
猫/proc/パーティション
mount -t ext3 /dev/sdc1 /mnt/usb
git clone --bare /home/yoda/project /mnt/usb/project
(3) USB スティックを家に持ち帰り、自宅でリポジトリのクローンを作成します。
猫/proc/パーティション
mount -t ext3 /dev/sdc1 /mnt/usb
git clone /mnt/usb/project /home/yoda/project
(4) コミットを自宅の PC から USB スティックにプッシュバックします
mount -t ext3 /dev/sdc1 /mnt/usb
cd /ホーム/ヨーダ/プロジェクト
gitプッシュ
(5) USB スティックをオフィスに持って行き、USB スティックからオフィスの PC にコミットをプッシュします。
mount -t ext3 /dev/sdc1 /mnt/usb
cd /mnt/usb/プロジェクト
gitプッシュ
(6) オフィスの PC から USB スティックにコミットをプルします
mount -t ext3 /dev/sdc1 /mnt/usb
cd /mnt/usb/プロジェクト
git プル
(7) USB スティックから自宅の PC にコミットをプルします
mount -t ext3 /dev/sdc1 /mnt/usb
cd /ホーム/ヨーダ/プロジェクト
git プル
bitnami スタック Subversion はインストールが簡単です。xampp を portableapps.com と subversion でインストールすることもできます。