5 ответов:
man-страница для оформления заказа:http://git-scm.com/docs/git-checkout
man-страница для клона:http://git-scm.com/docs/git-clone
подводя итог, clone предназначен для извлечения репозиториев, которых у вас нет, checkout-для переключения между ветвями в репозитории, который у вас уже есть.
Примечание: Для тех, у кого есть фон SVN/CVS и новый для Git, эквивалент
git cloneв SVN / CVS этоcheckout. Та же формулировка разные термины часто сбивают с толку.
git clone - это получение ваших репозиториев с удаленного сервера git.
git checkout это проверка желаемого состояния вашего репозитория (например, ветвей или конкретных файлов).
например, в настоящее время вы находитесь на главной ветке, и вы хотите переключиться в ветку разработки.
git checkout develop_branchнапример, вы хотите проверить определенный статус конкретного файла
git checkout commit_point_A -- <filename>здесь хорошее ссылка для вас, чтобы узнать Git, позволяет вам понять гораздо легче.
одна вещь, чтобы заметить, это отсутствие каких-либо" Copyout " в git. Это потому что у вас уже есть полное копировать в локальное РЕПО - ваше локальное РЕПО является
cloneвыбранного вами восходящего РЕПО. Таким образом, у вас есть эффективно личныйcheckoutof все, не ставя некоторую "блокировку" на эти файлы в ссылочном РЕПО.Git предоставляет хэш-значения SHA1 в качестве механизма проверки того, что у вас есть копия дерева файлов / каталогов / фиксации / РЕПО-это то же самое, что и тот, кто может объявить вещи "мастером" в иерархии доверия. Это позволяет избежать всех тех "замков", которые заставляют большинство систем SCM задыхаться (с обычными проблемами частных копий, больших слияний и без реального контроля или управления исходным кодом ;-) !
просто git checkout имеет 2 использования
- переключение между существующими локальными филиалами, такими как
git checkout <existing_local_branch_name>- создайте новую ветвь из текущей ветви с помощью флага-b. предположим, что если вы находитесь в главной ветви, то
git checkout -b <new_feature_branch_name>создаст новую ветку с содержимым master и переключится на вновь созданную веткуВы можете найти больше вариантов в официальный сайт
checkoutможно использовать для многих случаях :1-й случай: переключение между ветвями в локальном репозитории Например :
git checkout exists_branch_to_switchвы также можете создать новую ветку и переключиться в этом случае с
-b
git checkout -b new_branch_to_switch2-й случай: восстановить файл из X rev
git checkout rev file_to_restore...
Comments