对于我的学校工作,我做了很多切换计算机(从实验室到笔记本电脑到图书馆).我有点想把这个代码置于某种版本控制之下.当然问题是我不能总是在我使用的计算机上安装其他软件.我可以在拇指驱动器上保留任何类型的版本控制系统吗?我有一个2GB的驱动器,但我可以在必要时获得更大的驱动器.
我正在做的项目并不是特别大.
编辑: 这需要在Windows下工作.
编辑II: Bazaar最终成为我选择的.如果你选择TortoiseBzr,那就更好了.
我是用Git做的.只需创建目录的Git存储库:
git-init git add . git commit -m "Done"
将棒,cd插入其中的目录(我有一个大的ext2文件,我用-o loop挂载),然后执行:
git-clone --bare /path/to/my/dir
然后,我把棍子带到其他电脑(家里等).我可以直接在棒上工作,或者再次克隆.转到硬盘上的某个目录并:
git-clone /path/to/stick/repos
当我完成更改后,我会'git push'回到坚持,当我重新开始工作时,我再次'推动'再次将更改从坚持转移到工作计算机上.一旦你设置了它,你可以使用'git pull'来获取更改(你不需要再次克隆,只是第一次)和'git push'以另一种方式推送更改.
这样做的好处在于,您可以通过"git log"查看所有更改,甚至可以保持一些不相关的工作在此期间在两个位置发生变化时保持同步.
如果您不喜欢命令行,可以使用gitk和git-gui等图形工具.
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
你可以使用Portable Python和Bazaar(Bazaar是一个Python应用程序).我喜欢将Bazaar用于我自己的个人项目,因为它非常简单.此外,它可以移植,因为Python可以移植.您只需要在Portable Python安装中安装它的依赖项.
对你来说最好的答案是某种DVCS(流行的是Git,Mercurial,Darcs,Bazaar ......).原因是您在所使用的任何计算机上都拥有整个存储库的完整副本.我没有亲自使用过这些系统,因此其他人最好推荐占用空间小且兼容性好的DVCS.
我用git.Git repos非常小,不需要守护进程.您可以在flashdrive上安装cygwin或msysgit.
编辑:这里有一些在闪存驱动器上安装cygwin的说明
只是为了在Stick上添加额外的资源Subversion.我刚刚在我的4GB USB驱动器上进行设置,非常简单且无痛.
以为我现在非常想尝试Bazaar.
更新:我已经在我的USB驱动器上安装了PortablePython,很简单,但在那里买了集市......我放弃了,一个接一个依赖,而且我已经有svn工作了.
如果有人知道一个简单的便携式安装程序,我会很高兴.