43

对于我的学校工作,我做了很多切换计算机(从实验室到我的笔记本电脑再到图书馆)。我有点想将此代码置于某种版本控制之下。当然,问题是我不能总是在我使用的计算机上安装额外的软件。是否有任何类型的版本控制系统可以保存在拇指驱动器上?我有一个 2GB 的驱动器来安装它,但如果需要,我可以买一个更大的驱动器。

我正在做的项目并不是特别大,仅供参考。

编辑: 这需要在 Windows 下工作。

编辑二: 集市最终成为我选择的。如果您使用 TortoiseBzr,那就更好了。

4

14 回答 14

21

我用 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 等图形工具。

于 2008-09-18T23:14:42.913 回答
18

Darcs非常适合这个目的。

  • 我不能保证其他平台,但在 Windows 上它只是一个可以保存在驱动器上的可执行文件。
  • 最重要的是,它的交互式命令行界面非常棒,并且很快变得直观(我现在真的很怀念任何缺少它们的 VCS 中的交互式提交)——作为正常工作流程的一部分,您也不需要记住许多命令。这是我在个人项目中使用它而不是 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

众所周知,它对于大型项目来说很慢,但我在使用它的中小型个人项目中从未遇到任何性能问题。

由于不需要安装,您甚至可以省去驱动器,只需从网络上获取 darcs 二进制文件 - 如果我忘记了驱动器,我会从我保留在我的网络空间中的镜像中提取我想要处理的存储库的副本,然后创建补丁并将其作为文件通过电子邮件发送给我自己:

darcs get http://example.com/repos/forum/
# Make changes and record patches
darcs send -o C:\changes.patch
于 2008-09-18T23:21:19.933 回答
13

您可以使用Portable PythonBazaar(Bazaar 是一个 Python 应用程序)。我喜欢将 Bazaar 用于我自己的个人项目,因为它非常简单。另外,它可以移植,因为 Python 可以移植。你只需要在你的 Portable Python 安装中安装它的依赖项。

于 2008-09-18T23:13:00.030 回答
10

对你来说最好的答案是某种 DVCS(流行的是GitMercurialDarcsBazaar ...)。原因是您在使用的任何机器上都拥有整个存储库的完整副本。我个人没有使用过这些系统,所以其他人最好推荐一个占用空间小、跨平台兼容性好的 DVCS。

于 2008-09-18T23:10:10.257 回答
8

我会使用git。Git 存储库非常小,不需要守护程序。您可能可以在闪存驱动器上安装cygwinmsysgit

编辑:这里有一些关于在闪存驱动器上安装 cygwin 的说明

于 2008-09-18T23:10:40.520 回答
5

只是为了在 Stick 上添加额外的资源Subversion。我刚刚在我的 4GB USB 驱动器上进行了设置,非常简单且无痛。

以为我现在很想尝试 Bazaar。

更新:我已经在我的 USB 驱动器上设置了 PortablePython,很简单,但是在那里得到了集市……我放弃了,一个接一个地依赖,因为我已经 svn 工作了。
如果有人知道一个简单的便携式安装程序,我会很高兴。

于 2009-02-24T11:25:44.853 回答
4

我推荐 Fossil http://www.fossil-scm.org/

包括

  • 命令行
  • dvcs
  • 跨平台(且易于编译)
  • 'autosync' 命令使同步到备份的基本任务变得容易。
  • 备份服务器配置是轻而易举的事。
  • 易于学习/使用
  • 非常有帮助的社区
  • 包含 wiki 和 bugtracker 的 web ui。
  • 3.5Mb,单个可执行文件
  • 一个 sqlite 数据库作为存储库
于 2010-01-08T20:17:01.000 回答
3

你可以把颠覆二进制文件放在那里——它们只有 16 兆,所以你也有足够的空间来存放一些存储库。您可以从命令行使用官方二进制文件,或将图形工具(如TortoiseSVN)指向存储库目录。如果您喜欢,那么您可以安装驱动器以自动运行 SVNSERVE 应用程序,在您插入驱动器的那一刻,将任何计算机变成轻量级颠覆服务器。

我在这里找到了有关此过程的一些说明。

于 2008-09-18T23:13:10.047 回答
3

我在我的拇指驱动器上使用颠覆,官方二进制文件将在驱动器上运行。这个技巧的问题是您需要访问命令行才能使其工作或能够运行批处理文件。当然,我将拇指驱动器上的文件同步到我付费的服务器。如果您不想在网络上获得托管空间,您可以始终将存储库托管在桌面上(使用 file:/// 协议)。

于 2008-09-18T23:33:12.587 回答
3

我会因为说出这个答案而被处以私刑,但它在 Windows 下有效:RCS

您只需RCS使用您的代码在每个目录中创建一个目录。到了办理入住手续的时候,ci -u $FILE. (二进制文件还要求您rcs -i -kb $FILE在第一次签入之前运行。)

如果您希望有一天“升级”到那个目录(并从那里升级到其他海报提到的任何其他 VCS 系统),目录中有一堆文件,它们与 CVS兼容RCS,v:-)

于 2008-09-18T23:56:21.783 回答
1

颠覆会有点工作。见线程

就个人而言,我更喜欢将所有内容保存在一台机器上,并将远程桌面保存在其中。

于 2008-09-18T23:16:26.030 回答
1

在我看来,闪存和版本控制似乎不是一个好主意。恐怕内存很快就会用完,特别是如果您广泛使用各种版本控制操作,这些操作会进行许多小磁盘操作(合并、来回恢复等)。

至少,请确保尽可能多地备份存储库,以防驱动器发生故障。

于 2009-02-24T11:30:30.863 回答
1

根据 Milan Babuškov 的回答,我正在使用 GIT:

(1) 创建存储库并提交(在办公室 PC 上)

mkdir /home/yoda/project && cd /home/yoda/project

混帐初始化

混帐添加。

git commit -m "完成"

(2) 插入 U 盘并克隆存储库

猫/proc/partitions

mount -t ext3 /dev/sdc1 /mnt/usb

git clone --bare /home/yoda/project /mnt/usb/project

(3) 把U盘带回家,在家里做一个仓库的克隆

猫/proc/partitions

mount -t ext3 /dev/sdc1 /mnt/usb

git clone /mnt/usb/project /home/yoda/project

(4) 将提交从家用 PC 推送回 U 盘

mount -t ext3 /dev/sdc1 /mnt/usb

cd /home/yoda/项目

git 推送

(5) 将 U 盘带到办公室并将提交从 U 盘推送到办公室 PC

mount -t ext3 /dev/sdc1 /mnt/usb

cd /mnt/usb/项目

git 推送

(6) 从办公室 PC 拉取提交到 U 盘

mount -t ext3 /dev/sdc1 /mnt/usb

cd /mnt/usb/项目

git 拉

(7) 从 U 盘拉取提交到家用 PC

mount -t ext3 /dev/sdc1 /mnt/usb

cd /home/yoda/项目

git 拉

于 2011-02-15T09:23:35.947 回答
0

bitnami stack subversion 很容易安装。您也可以尝试使用portableapps.com 和subversion 安装xampp。

于 2008-09-21T22:13:06.677 回答