Git только для контроля версий? - PullRequest
4 голосов
/ 08 мая 2009

Безумно ли интегрировать Git в проект, который не имеет ничего общего с контролем версий.

Я имею в виду сборщик данных, который регулярно запускает несколько команд на стороне клиента и фиксирует вывод в локальный репозиторий git. Если удаленный сервер доступен, он отправляет данные в исходное состояние для дальнейшей обработки на стороне сервера. В этом сценарии у меня будет сжатие, история и различные способы доставки бесплатно. Какие недостатки?

Ответы [ 9 ]

8 голосов
/ 08 мая 2009

Это не безумие, нет. Изначально Git был разработан как файловая система с управлением версиями, которая впоследствии будет использоваться в качестве основы для системы контроля версий; однако, все пошло не так, и git стал системой контроля версий. Тем не менее, это все еще в значительной степени проект файловой системы, и нет никаких причин, по которым вы не могли бы использовать его для других целей (на самом деле я собирался сделать что-то очень похожее, но проект никогда не удавался).

2 голосов
/ 08 мая 2009

Уже доступно несколько систем резервного копирования на основе Git, например Gibak . Так что он определенно способен эффективно / безопасно обрабатывать большие наборы данных.

Недостатком будет то, что вы не сможете объединить двоичные данные.

2 голосов
/ 08 мая 2009

Это зависит от того, какие данные вы хотите обработать. Если вы говорите о маленьких кусочках данных, то вместо этого используйте базу данных, но если вы хотите отслеживать изменения в документах, то я не вижу проблемы при построении вашей системы поверх чего-то вроде Git.

1 голос
/ 08 мая 2009

Я использую Subversion для резервного копирования базы данных. Одна строка на запись со множеством статических записей делает svn быстрым и простым решением для резервного копирования. Нет значимых недостатков, которые я вижу. От одного случайного интернет-парня к другому: у вас есть моя поддержка!

1 голос
/ 08 мая 2009

Я не понимаю, как это было бы плохой идеей. Git отлично подходит для управления большими и малыми объемами информации. Двоичные или текстовые данные разрешены и сохраняются в истории изменений.

Это, вероятно, может работать так же, как iFolder , но с гораздо лучшей способностью объединять, хранить историю и делиться вашей информацией.

Одной из проблем является сложность, мешающая такого рода настройке. Если ваши пользователи не разбираются в git-ветвлении, разрешении конфликтов путем слияния и применения патчей вручную, вам придется принять несколько трудных решений о том, как отключить систему.

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

Хорошая особенность git (в отличие от svn или iFolder) заключается в том, что перемещение файла выполняется легко, а слияние - разумно.

В целом, git хорошо управляет нашими двоичными изображениями, файлами мультимедиа и кодами в одном репозитории. Я не могу понять, почему его нельзя было использовать в качестве помощника для любого другого проекта, для отслеживания документов, изображений и других медиа.

1 голос
/ 08 мая 2009

Звучит так, как будто вы ищете очередь сообщений или служебную шину какого-то рода. Таких много. Конечно, если у вас работает Git, почему бы и нет? Но просто убедитесь, что вы не просто используете его, потому что это единственный подобный вам инструмент, который вы знаете.

1 голос
/ 08 мая 2009

Мне кажется, проще собирать данные в базе данных. В базе данных информация организована, легко доступна и может легко управляться. Также, если вам нужен удаленный доступ к людям, разрешите доступ к базе данных другим доменам.

В то время как в Git вы застряли, сохраняя все в плоских файлах. Это ваша работа, чтобы затем проанализировать всю эту информацию, и если у вас есть много информации, это может занять много времени. Однако базы данных обычно довольно быстро возвращают точную информацию, которую вы хотите.

1 голос
/ 08 мая 2009

нет, это не только для управления исходным кодом.

люди используют его в качестве системы управления версиями для всех видов документов, таких как рукописи, речи и т. Д. *

git не нужно использовать с программным управлением исходными кодами, вы можете использовать его как хотите

1 голос
/ 08 мая 2009

"Git - это бесплатная распределенная система управления версиями с открытым исходным кодом, предназначенная для быстрой и эффективной работы с небольшими и очень крупными проектами.

Каждый клон Git - это полноценный репозиторий с полной историей и возможностями полного отслеживания ревизий, не зависящий от доступа к сети или центрального сервера. Ветвление и слияние выполняются быстро и легко.

Git используется для контроля версий файлов, так же как и такие инструменты, как Mercurial, Bazaar, Subversion, CVS, Perforce и Visual SourceSafe. «

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...