Оглавление
- Укажите имя и адрес электронной почты при отправке кода
- Клонировать код из удаленного репозитория
- Вытащить код из удаленного репозитория
- Отправить код на местный
- Отправить код в удаленный репозиторий
- Работа с адресом удаленного склада
- операционная ветвь
- тег операции
- Отменить удаленный контроль версий
- оперативный патч
- Изменить примечания
- выбор вишни
- Сгенерировать новый SSH-ключ
- Добавьте сгенерированный открытый ключ в учетную запись github.
- Подтвердите SSH-ключ
- Управление несколькими учетными записями github
- описание конфигурационного файла git
- Слишком длинное имя файла в git для Windows
- git глобальная конфигурация игнорирования
- Решить проблему отображения цифр в китайских именах файлов
- Игнорировать проблемы с SSL-сертификатом
- Вытягивайте и фиксируйте только указанный каталог
Укажите имя и адрес электронной почты при отправке кода
git config user.email [email protected]
git config user.name 太空眼睛
Клонировать код из удаленного репозитория
- Клонируйте код из ветки по умолчанию:
git clone [email protected]:demo/demo.git
- Клонируем код из указанной ветки:
git clone -b "develop" [email protected]:demo/demo.git
- Код клонирования с паролем учетной записи (
@
символы%40
заменены):git clone http://abc%40qq.com:[email protected]/demo.git
Вытащить код из удаленного репозитория
git pull
- Вытащите код и
rebase
:git pull -r
Отправить код на местный
git commit -m "对本次提交的描述"
Отправить код в удаленный репозиторий
git push
- Нажмите несколько удаленных веток одновременно:
git push --atomic origin branch1 branch2
В Git >= 2.4 это можно сделать автоматически (т.е. если какую-либо из указанных веток нельзя нажать, ничего не будет отправлено)
- Вставьте загруженный код в новую библиотеку (проект необходимо заранее собрать в новой библиотеке):
git push --mirror https://gitee.com/demo/demo.git
Работа с адресом удаленного склада
- Измените
origin
адрес удаленного склада:git remote set-url origin https://gitee.com/demo/demo.git
- Добавьте
gitee
удаленный репозиторий с псевдонимом:git remote add gitee https://gitee.com/demo/demo.git
операционная ветвь
- Используйте параметр -t для создания локальной ветки с тем же именем, что и у удаленной ветки:
git checkout -t origin/refactor
- Создайте новую ветку:
git branch new_branch_name
- Создайте и переключитесь на новую ветку:
git checkout -b new_branch_name
- удалить локальную ветку
git branch --delete dev
git branch -d dev
- Удалить удаленную ветку:
git push origin --delete branch
- удалить ветку отслеживания
git fetch origin --prune
git fetch origin -p
тег операции
- Удалить удаленный тег:
git push origin --delete tag <tagname>
Отменить удаленный контроль версий
- Удалить
pom-xml-flattened
контроль версий из файла:git rm -r --cached pom-xml-flattened
оперативный патч
- Проверьте, можно ли применить патч:
git apply --check /G/demo/demo.patch
- Примените патч:
git apply /G/demo/demo.patch
- Если есть конфликт, патч все равно применяется:
git apply --reject /G/demo/demo.patch
Для конфликтующих файлов
.rej
будет создан файл с тем же именем, и конкретный конфликтующий блок кода будет записан в этот файл.
Изменить примечания
Изменить последний коммит
git commit --amend
Изменить старые заметки
- Сначала проверьте идентификатор коммита родительского коммита, который нужно изменить.
git reflog -5
- После получения идентификатора последней отправки представления для изменения комментария вы можете войти на интерактивную страницу для модификации.
git rebase -i [commit_id]
- Измените выбор строки, которую необходимо изменить, чтобы перефразировать, затем Ctrl + C, чтобы выйти из режима редактирования, и снова введите, он войдет в
:wq
другой интерактивный интерфейс, и вы можете напрямую изменить примечания, нажмите после измененияctrl+c
,:wq
сохраните и выйдите
выбор вишни
Если вы хотите включить коммит A, вы можете использовать следующий синтаксис
git cherry-pick A^..B
Сгенерировать новый SSH-ключ
- В Git типа Bash
$ ssh-keygen -t ed25519 -C "[email protected]"
- Вы всегда можете нажать Enter в соответствии с подсказкой по умолчанию. После успеха
C:\Users\you\.ssh
в этом каталоге будут созданы 2 файла.
id_ed25519
id_ed25519.pub
Добавьте сгенерированный открытый ключ в учетную запись github.
- 登录gibhub , «Настройки» -> «Ключи SSH и GPG» -> «Новый ключ SSH»
- Введите заголовок , вы можете ввести любой
- Скопируйте и вставьте содержимое файла в ключ
id_ed25519.pub
Подтвердите SSH-ключ
В Git типа Bash
ssh -T [email protected]
Если отображается следующая информация, проверка пройдена
Hi xxxx! You've successfully authenticated, but GitHub does not provide shell access.
Управление несколькими учетными записями github
Измените C:\Users\you\.ssh\config
файл и добавьте следующий пример конфигурации
Host github
HostName github.com
User git
IdentityFile C:\Users\you\.ssh\id_ed25519
См. выше , чтобы проверить ключ SSH.
описание конфигурационного файла git
- Глобальный путь к конфигурационному файлу:
~/.gitconfig
,git config --global
все содержимое настроек находится в этом файле - Конфигурация ключа SSH службы Git:
~/.ssh
- Если в глобальной конфигурации указаны имя пользователя и почтовый ящик, но вам нужно
git commit
отобразить другое имя пользователя и почтовый ящик для других проектов, вы можете工程目录/.git/config
добавить следующее содержимое в
[user]
email = [email protected]
name = xxx
Слишком длинное имя файла в git для Windows
git
Можно создавать 4096
длинные имена файлов, однако в windows
большинстве случаев это 260
связано с git
использованием более старых версийwindows api
git config --global core.longpaths true
git глобальная конфигурация игнорирования
git config --global core.excludesfile C:/Users/Administrator/.gitignore
- Изменить
.gitignore
и добавить правила игнорирования
Решить проблему отображения цифр в китайских именах файлов
git config --global core.quotepath false
Игнорировать проблемы с SSL-сертификатом
git config --global http.sslVerify false
Вытягивайте и фиксируйте только указанный каталог
- Открытая
sparse checkout
функция:git config core.sparsecheckout true
- Список для добавления каталога в
checkout
. Путь является относительным путем под репозиторием, вы также можете отредактировать этот файл с помощью текстового редактора.echo "REPO_COP/" >> .git/info/sparse-checkout
- Если вы измените его в будущем
.git/info/sparse-checkout
, добавите или удалите некоторые каталоги, вы можете выполнить следующую команду для перезапускаcheckout
git checkout master
- или
git read-tree -mu HEAD
- Чтобы закрыть
sparse checkout
функцию, просто измените настройку, онаcore.sparsecheckout
будетfalse
недействительной, вам нужно изменить.git/info/sparse-checkout
файл, заменить содержимое на «*», а затем выполнить командуcheckout
илиread-tree
настройки файла sparse-checkout
- Сопоставление подкаталогов
- Например, в
sparse-checkout
файле, если перед именем каталога стоит косая черта/docs/
, он будет соответствовать только каталогу в корневом каталоге проекта.Еслиdocs
перед именем каталога нет косой черты, напримерdocs/
, если есть каталог с это имя в других каталогах, оноtest/docs/
также может быть сопоставлено.
И если записывается многоуровневый каталог, такой какdocs/05/
, он соответствует только каталогу в корневом каталоге проекта, независимо от того, предшествует ли ему косая черта, еслиtest/docs/05/
он не может быть сопоставлен.
- Например, в
- подстановочный знак
*
(звездочка)- В
sparse-checkout
файле поддерживаются символы подстановки*
, например, его можно записать в следующем формате:*docs/ index.* *.gif
- В
- исключение
!
(восклицательный знак)- В
sparse-checkout
файле также поддерживаются элементы исключения!
, Если вы хотите исключить только каталог под элементом исключенияdocs
, вы можете написать в следующем формате:/* !/docs/
- Одно замечание: если вы хотите отключить
sparsecheckout
функцию и взять всю библиотеку проекта, вы можете написать число*
, но если есть исключения, вы должны написать их/*
, а исключения должны быть написаны после подстановочного знака.
- В