Взято здесь
Предположим, что вы работает в своем git-репозитории. Напатчили несколько веток, и вдруг - решили все переделать. Вернуть как было.
Показаны сообщения с ярлыком git. Показать все сообщения
Показаны сообщения с ярлыком git. Показать все сообщения
понедельник, 29 марта 2010 г.
Git. part 7
Взято здесь
Ветки в git - как ветки деревьев, постоянно обновляются и растут. Одно и то же символьное имя ветки (refs/heads/foo) может указывать на разные коммиты в разные моменты времени. В отличие от веток, теги (tags) - специально созданы для неизменяющихся по времени ссылок.
Ветки в git - как ветки деревьев, постоянно обновляются и растут. Одно и то же символьное имя ветки (refs/heads/foo) может указывать на разные коммиты в разные моменты времени. В отличие от веток, теги (tags) - специально созданы для неизменяющихся по времени ссылок.
Git. part 6
Взято здесь
SHA1-имена объектов как уникальные идентификаторы - это конечно удобно. Для роботов. Люди как-то привыкли называть друг друга по коротким именам, а не по кодам ДНК.
SHA1-имена объектов как уникальные идентификаторы - это конечно удобно. Для роботов. Люди как-то привыкли называть друг друга по коротким именам, а не по кодам ДНК.
Git. part 5
Взято здесь
Для тех, кто раньше работал только с CVS или CVS++ (ну то есть Subversion), концепция коммитов-слияний (merge) может оказаться не очень понятной. Так что я решил обратиться к классике для иллюстрации слияний.
Для тех, кто раньше работал только с CVS или CVS++ (ну то есть Subversion), концепция коммитов-слияний (merge) может оказаться не очень понятной. Так что я решил обратиться к классике для иллюстрации слияний.
Git. part 4
Взято здесь
Git не был бы системой контроля версий, если бы не позволял хранить историю изменений деревьев.
Для хранения истории в git используются специальные объекты-commit'ы. Каждому коммиту соответствует ровно одно дерево. Коммиты также хранят информацию о "предках" этого дерева - то есть ссылки на т.н. родительские коммиты. Можно считать, что коммит указывает, из каких деревьев (их может быть несколько) произошло текущее дерево, а также кто в этом виноват (автор коммита) и по какой причине (сообщение коммита).
Git не был бы системой контроля версий, если бы не позволял хранить историю изменений деревьев.
Для хранения истории в git используются специальные объекты-commit'ы. Каждому коммиту соответствует ровно одно дерево. Коммиты также хранят информацию о "предках" этого дерева - то есть ссылки на т.н. родительские коммиты. Можно считать, что коммит указывает, из каких деревьев (их может быть несколько) произошло текущее дерево, а также кто в этом виноват (автор коммита) и по какой причине (сообщение коммита).
Git. part 3
Взято здесь
В первой части я уже упоминал, что репозиторий git представляет собой картотеку объектов, объединенных ссылками друг на друга.
Из четырех типов объектов в git (blob, tree, commit, tag) только blob-ы не могут содержать ссылки. Все остальные объекты, по сути, являются просто ссылками либо на blob-ы, либо на другие ссылки.
В первой части я уже упоминал, что репозиторий git представляет собой картотеку объектов, объединенных ссылками друг на друга.
Из четырех типов объектов в git (blob, tree, commit, tag) только blob-ы не могут содержать ссылки. Все остальные объекты, по сути, являются просто ссылками либо на blob-ы, либо на другие ссылки.
Git. part 2
Взято здесь
Объекты типа blob(Binary Large Object) - это основа репозитория. Это маленькие безымянные герои. Безымянные в прямом смысле - это просто содержимое, без имени. Если вы добавляете в git файл tutorial.txt с содержимым "Hello, world!", то это результирующий blob-объект будет содержать строчку "Hello, world!" и ни слова о tutorial.txt. Это очень похоже на иноды (inodes), используемые в файловых системах, если вы понимаете о чем я.
Объекты типа blob(Binary Large Object) - это основа репозитория. Это маленькие безымянные герои. Безымянные в прямом смысле - это просто содержимое, без имени. Если вы добавляете в git файл tutorial.txt с содержимым "Hello, world!", то это результирующий blob-объект будет содержать строчку "Hello, world!" и ни слова о tutorial.txt. Это очень похоже на иноды (inodes), используемые в файловых системах, если вы понимаете о чем я.
Git. part 1
Взято здесь
Репозиторий git - это просто коллекция т.н. объектов, объединенных ссылками друг на друга. Каждый объект - это некий файл специального формата. У каждого объекта есть "имя", которое вычисляется как SHA1 хеш содержимого объекта и записываемся как шестнадцатеричное представление этого хеша. Длина хеша равна 20 байтам, так что шестнадцатеричное представление содержит 40 букв и цифр.
Репозиторий git - это просто коллекция т.н. объектов, объединенных ссылками друг на друга. Каждый объект - это некий файл специального формата. У каждого объекта есть "имя", которое вычисляется как SHA1 хеш содержимого объекта и записываемся как шестнадцатеричное представление этого хеша. Длина хеша равна 20 байтам, так что шестнадцатеричное представление содержит 40 букв и цифр.
Подписаться на:
Сообщения (Atom)