Контроль версий на USB-накопителе емкостью 2 ГБ - PullRequest
43 голосов
/ 19 сентября 2008

Для школьной работы я много переключаю компьютеры (от лабораторий к ноутбуку и к библиотеке). Я бы хотел поставить этот код под контроль версий. Конечно, проблема в том, что я не всегда могу установить дополнительное программное обеспечение на компьютеры, которые я использую. Есть ли какая-либо система контроля версий, которую я могу хранить на флэш-накопителе? У меня есть диск на 2 ГБ, чтобы установить его, но при необходимости я могу получить больший.

Проекты, которые я делаю, не особо велики.

РЕДАКТИРОВАТЬ: Это должно работать под окнами.

РЕДАКТИРОВАТЬ II: Базар оказался тем, что я выбрал. Еще лучше, если вы идете с TortoiseBzr.

Ответы [ 14 ]

21 голосов
/ 19 сентября 2008

Я делаю это с Git. Просто создайте Git-репозиторий вашего каталога:

git-init
git add .
git commit -m "Done"

Вставьте флешку, перейдите в каталог cd (у меня большой файл ext2, который я монтирую с циклом -o) и выполните:

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.

18 голосов
/ 19 сентября 2008

Darcs отлично подходит для этой цели.

  • Я не могу поручиться за другие платформы, но на винде это всего лишь один исполняемый файл, который вы можете сохранить на диске.
  • Самое главное, его интерактивный интерфейс командной строки фантастический и очень быстро становится интуитивным (Я сейчас очень скучаю по интерактивному совершает в любом VCS, в котором их нет) - вы не нужно запоминать много команд, как часть вашего обычного рабочего процесса либо. это это главная причина, по которой я использую его для мерзавца личные проекты.

Настройка:

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
13 голосов
/ 19 сентября 2008

Вы можете использовать Portable Python и Bazaar (Bazaar - это приложение на Python). Мне нравится использовать Bazaar для своих личных проектов из-за его чрезвычайной простоты. Кроме того, он может быть переносимым, потому что Python может быть переносимым. Вам просто нужно будет установить его зависимости в вашей версии Portable Python.

10 голосов
/ 19 сентября 2008

Лучший ответ для вас - это какой-то DVCS (популярными являются Git , Mercurial , Darcs , Bazaar .. .). Причина в том, что у вас есть полная копия всего хранилища на любой машине, которую вы используете. Я не использовал эти системы лично, поэтому другим лучше всего порекомендовать DVCS с небольшой занимаемой площадью и хорошей кроссплатформенной совместимостью.

8 голосов
/ 19 сентября 2008

Я бы использовал мерзавец . Git репозитории действительно маленькие и не требуют демона. Вероятно, вы можете установить cygwin или msysgit на свой флэш-накопитель.

Редактировать: Вот несколько инструкций по установке Cygwin на флешку

5 голосов
/ 24 февраля 2009

Просто чтобы добавить дополнительный ресурс Subversion на палочке . Я только что установил это на своем 4 ГБ USB-накопителе, довольно просто и безболезненно.

Думал, что теперь я очень испытываю желание попробовать Bazaar.

Обновление: я установил PortablePython на свой USB-накопитель, просто, но получаю там базар ... Я сдался, одна зависимость за другой, и, поскольку у меня работает SVN.
Если кто-нибудь знает о простом переносном инсталляторе, я был бы очень рад.

4 голосов
/ 08 января 2010

Я рекомендую Fossil http://www.fossil -scm.org /

включает в себя

  • командная строка
  • dvcs
  • кроссплатформенная (и легко компилируемая)
  • Команда 'autosync' упрощает синхронизацию с резервной копией.
  • конфигурация сервера резервного копирования - пустяк.
  • легко выучить / использовать
  • очень полезное сообщество
  • веб-интерфейс с вики и багтрекер включены.
  • 3,5 МБ, один исполняемый файл
  • одна база данных sqlite в качестве хранилища
3 голосов
/ 19 сентября 2008

Я получу линчевание за то, что произнесу этот ответ, но он работает под Windows: RCS .

Вы просто создаете каталог RCS в каждом из каталогов с вашим кодом. Когда приходит время проверить вещи, ci -u $FILE. (Двоичные файлы также требуют запуска rcs -i -kb $FILE перед первой регистрацией.)

Внутри каталога RCS находится куча файлов ,v, совместимых с CVS, если вы захотите «обновить» до этого дня (и оттуда до любой другой системы VCS, упомянутой другими авторами). , : -)

3 голосов
/ 19 сентября 2008

Я использую Subversion на моем флэш-накопителе, официальные двоичные файлы будут работать сразу же с накопителя. Проблема с этим трюком в том, что вам нужно получить доступ к командной строке, чтобы это работало или чтобы вы могли запускать командные файлы. Конечно, я синхронизирую файлы на моем флэш-накопителе с сервером, за который я плачу. Вы всегда можете разместить репозиторий на рабочем столе (используйте протокол file: ///), если не хотите размещать хостинг в Интернете.

3 голосов
/ 19 сентября 2008

Вы можете поместить туда двоичные файлы Subversion - они всего 16-ти мегагерц, так что у вас будет достаточно места и для некоторых репозиториев. Вы можете использовать официальные двоичные файлы из командной строки или указать графический инструмент (например, TortoiseSVN ) в каталоге репозитория. Если вам не по себе, вы можете настроить диск для автозапуска приложения SVNSERVE, превратив любой компьютер в легкий сервер Subversion, как только вы подключите диск.

Я нашел несколько инструкций для этого процесса здесь .

...