2013-08-20 4 views
0

У меня есть компьютерное кафе. Обновление и поддержка файлов (в частности, игр) было для меня и моих сотрудников проблемой. Кроме того, я не хочу платить за что-то вроде G-Cafe Management Program. Я знаком с такими языками программирования, как C, PHP, JAVA, но я не знаю, какую логику и алгоритм я бы использовал для своей цели и не знаком с сетью.Локальный репозиторий для обновления игр?

Мой друг предложил использовать локальный репозиторий, поэтому я изучал темы относительно того же вопроса. Но, оказывается, у меня есть вопрос, на который не ответил ответ, который я прочитал.

Это, как я посмотреть, как мое обновление будет работать:

Я планирую обновление игры через этот поток:. [(Internet -> Server) -> (Server -> Client] Если есть игра обновления, локальный сервер загрузит его через Интернет, а затем клиент скопирует или загрузит эти файлы с локального сервера.

Увидев, что в играх есть автоприводы, я планирую разместить все игры внутри репозитория (в сервер), а клиентские станции будут подключаться к этому репозиторию. Но опять же, SVN работает с изменениями, я прав?

Есть ли какие-либо предложения или идеи, как я смогу обновить клиентские игры через SVN/Git (конечно, с сервера)? Или, если есть другие способы?

я играл слишком туп .. :(

+0

'rsync'? ...... – zerkms

ответ

2

Одним из решений, которое приходит на ум, является использование образов дисков.

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

+0

(Прошу прощения, если это глупый вопрос) Ручное нажатие изображение или использование какого-либо программного обеспечения? – srph

+0

Я слышал, что обновление через MD5 Hash .. тоже возможно? – srph

+0

@KierBorromeo Это зависит от используемого программного обеспечения образа диска. Некоторые из них могут быть пропущены через сеть, другие должны быть нажаты вручную через sneaker-net и флешку. Насколько я понимаю, MD5 Hashing - это всего лишь способ проверить целостность файла, в этом случае это не поможет. – Casey

0

система управления версиями работает с правками, да, что имеет значение для любого СВНА и мерзавца. В случае появления новых версий программы это, естественно, имеет смысл поместить их в ревизию, поскольку они, как правило, всего лишь моментальный снимок XYZ в определенный момент времени. XYZ - это то, что он хочет, двоичные программы, изображения, файлы и т. д.

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

Th ose изменения могут быть получены с клиентских компьютеров. Это может произойти либо с помощью скриптов, которые автоматически проверяют сервер каждые пару минут (cronjobs?) Для изменений или вручную.

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

+0

Итак, вы предлагаете использовать SCM для распределения бинарных файлов с несколькими гигабайтами? – zerkms

+0

Вопрос был основан на SCM, поэтому этот ответ основан на этом, а также на – neverendingo

+0

вы когда-нибудь пытались создать и проверить репозиторий svn/git, скажем, 20 Гбайт двоичных данных? (который будет легко расти до 100 после обновления пары игры). SCM в основном предназначены для отслеживания * текстовых изменений *, а не для распространения. – zerkms

Смежные вопросы