про git для самых маленьких

так как я не способен выбрать что то одно — выберу и то и другое. в связи с этим первый кросспост с моего блога — http://rlatyshenko.pp.ua/



ПРЕДУПРЕЖДЕНИЕ: маленькие буквы и произвольная пунктуация — художественный прием, не повторяйте этого дома и при детях.

образовательная минутка.

представьте что вы вася и вы программист. ещё у вас есть друг петя. он тоже программист. и вы вместе пишете программу. ситуация обыденная. и у обыденной ситуации как и положено, обыденные проблемы.

одна из основных проблем которые относятся к разряду обыденных — редактирование одного и того же файла.

ну то есть представьте себе что есть файл veryimportantfile.basic

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

со временем свою часть работы заканчивает и петя. после чего тоже загружает файл. и вот тут внимание! что произошло? правильно, баран петя затер все изменения которые вы сделали, заменив файл на свою версию. итог предсказуем. петя получает по рогам. вы садитесь и начинаете всё переделывать.

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

как это работает (WARNING: далее в статье последуют упрощения и метафоры несовместимые с жизнью).

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

специально для тех программистов которые не хотят обслуживать и создавать git сервер самостоятельно существую сервисы которые делают это вместо них. чаще всего на подобных сервисах хранятся огромные объемы open source проектов, и вокруг них уже давно построено крепкое сообщество, которое эти проекты и сопровождает.

на этом наверное все. если хотите узнать больше — гуглите слово “гитхаб”