Git общих операций и команд
Локальные операции библиотеки
Просмотр мерзавец команды справки документ
- После выполнения этой команды появится, браузер, браузер отображает файлы справки, так как причины производительности машины, откройте документ, то команда будет выполнена после того, как небольшая задержка ждать
- HTML страница отображается в браузере является локальными статическими страницами
#init是查看init命令的帮助文档
git help init
Создание или инициализировать местную библиотеку
- Если этот путь был в местной библиотеке, а затем восстановлен в исходное состояние
- Эта команда создает скрытый мерзавец папки, не удалять файлы в этой папке в пути, а не произвольно менять
#创建、初始化该路径
git init
#在该路径下创建demo文件夹,并将其创建为本地库。若该文件夹存在,则将其初始化
git init demo
Удалить местную библиотеку
- Удалить местную библиотеку просто нужно удалить скрытые файлы в локальной папке репозитория Git для
Если файлы проекта не будут сохранены, каталог может удалять элементы
настройки Подпись
- Цель состоит в том, чтобы различать идентичность разных разработчиков, требуется имя пользователя и почтовый ящик, подписи и проекта подпись на системном уровне подписи на уровне пользователя, то два должны установить один.
- Результаты, полученные при настройках подписи на уровне проектов будет настроен в .git / конфигурационный файл, .gitconfig файл в системе конфигурации пользовательского уровня настраивает пользователя в системной директории корня
- Здесь установлено имя пользователя и почтовый ящик не имеет ничего общего с GitHub счет, почтовый ящик не будет установлен почтовый ящик для отправки почты, просто идентифицировать личность
#项目级别:仅在本地库范围有效,优先级高
git config user.name jerry
git config user.email [email protected]
#系统用户级别(操作系统登录的用户):在当前操作系统的所有本地库有效
git config --global user.name jerry
git config --global user.email [email protected]
Просмотр состояния проекта
- Если есть новый файл будет добавлен или изменен, используйте эту команду, эти файлы будут выделены
- Эта команда также отображает статус промежуточной области и местных библиотек
git status
Добавить файлы в область размещения
- Файл постановки записей площадь, которые будут представлены, не представленные документы не будут готовы быть добавлены в промежуточной области
- Файл только после отправки файлов в промежуточной области, для того, чтобы подать в местную библиотеку, и библиотека должна быть представлена в файл локальной промежуточной области, а не файл рабочего пространства
#添加所有变更文件及子目录下的文件至暂存区
git add .
#添加单个变更文件至暂存区
git add demo.txt
#添加子目录下的变更文件至暂存区
git add com/app.txt
Отменить файл с нуля
git rm --cached demo.txt
Направлено в промежуточной области в местную библиотеку
- Если файл был изменен, вы не можете
git add
напрямую использовать эту команду , чтобы представить, но если это новый файл, вы должныgit add
затем использовать команду - Может быть ориентирован суб-набор замечаний, представленных информацию представить документы в местной библиотеке, эта операция не требуется
#将暂存区的某个文件提交至本地库。使用该命令成功后,会进入vim编辑页面,这个页面中可添加备注消息。操作vim与linux操作vim的方式一致
git commit demo.txt
#可以使用 -m 参数,直接添加备注消息
git commit -m "git demo" demo.txt
#将暂存区的所有文件提交至本地库
git commit -m "commit all"
Просмотр проекта Operation Вход
#显示完整的日志信息
git log
#以一行形式显示日志信息
git log --pretty=oneline
#以一行形式显示日志信息,且简化索引
git log --oneline
#显示完整的日志信息,且显示指针与步长
git reflog
версия Откат проекта
- Откат версия относится к файлу рабочего пространства восстановления проекта на временную версию площади государства
- сброс команд часто используемые параметры:
--soft
: изменить только локальную версию библиотеки не изменят рабочую зону и постановку версии площади
--mixed
: изменить только местную библиотеку и версию промежуточной области, не меняет версию рабочего пространства
--hard
: местную библиотеку, промежуточную область и версию рабочего пространства изменено - Голова продемонстрировала здесь является указателем на главной ветви
#根据版本索引移动版本,可前进可后退,使用后,log依然包含所有版本
git reset --hard 7c213d1
#使用散列值移动版本,可前进可后退,使用后,log依然包含所有版本
git reset --hard HEAD@{1}
#使用^移动版本,只能后退不能前进,HEAD后有几个^就移动几步,使用后,log只显示目前版本和之前版本
git reset --hard HEAD^
#使用~移动版本,只能后退不能前进,~后是数字几就移动几步,使用后,log只显示目前版本和之前版本
git reset --hard HEAD~1
Сравнение различий файлов
- По умолчанию, в отличие от временной версии области
- Можно сравнить с историческими версиями вашей местной библиотеки
- Команда с именем файла разница в отличии от одного файла без имени файла файл Сравнить все различия в текущем рабочем пространстве
#将当前工作区的demo.text与暂存区demo.text对比差异
git diff demo.text
#将当前工作区的demo.text与上一个历史版本比较差异
git diff HEAD^ demo.text
#将当前工作区的所有文件与暂存区对比差异
git diff
#将当前工作区的所有文件与最新历史版本比较差异
git diff HEAD
работа отделения
Просмотреть все ветви текущего проекта
git branch -v
Создание филиала
#创建一个名为new_branch的分支
git branch new_branch
Переключение филиала
#切换到new_branch分支工作
git checkout new_branch
Удаленные филиалы
#删除不是当前所在分支的分支
git branch -d new_branch
филиал восстановления
#通过散列值恢复分支
git branch new_branch HEAD@{1}
#通过^恢复分支
git branch new_branch HEAD^
#其他恢复方式与回滚项目版本中方式一致
Слияние филиал
- Комбинированное ветвь перед переключением на ветви должны быть объединены в отрасли.
- Пример: new_branch филиал в мастер отрасли, необходимо пройти
git checkout
операционные переключается обратно в основной ветви
#将new_branch这个分支合并到当前分支
git merge new_branch
Слияние филиального разрешения конфликтов
- Причина конфликта: та же версия изменений в тот же файл, в то же есть две ветви
- Когда представление о мерзавце конфликта: в командной строке дисплей (название филиала | СЛИЯНИЕ), представлены в объединенном государстве, породило конфликт. Просмотр файлов конфликтных, мерзавец будет добавить помечаются как часть конфликта
- Разрешение конфликтов, конфликт должен сначала вручную изменить содержимое файла, выберите место, где оговорки отбрасывается, а затем выполните следующие действия:
#将冲突状态标记为已解决
git add demo.text
#退出合并状态,也可通过 -m 参数添加注释消息,切记不能带文件名,本次操作是退出合并状态而不是将文件提交到本地库
git commit
Удаленная библиотека операций
Создание псевдонима для адреса удаленной базы данных
#test是别名,https://github.com/rawlins2397/test.git是远程仓库地址
git remote add test https://github.com/rawlins2397/test.git
Просмотреть все псевдонимы, созданные
git remote -v
Переименование псевдонима
#将已有别名test重命名为test1
git remote rename test test1
Удалить псевдоним
#删除已有别名test
git remote remove test
Нажмите местную библиотеку для удаленной библиотеки
- Команда будет предложено ввести удаленную учетную запись базы данных и пароль для аутентификации выполнения
- Порядок включает в себя операцию загрузки файла, из-за сеть причины, мы должны ждать закачанных
- Если протолкнул псевдоним, псевдоним Клонирование будет также клонировать
#需要指定远程库地址和要推送的分支
git push https://github.com/rawlins2397/test.git master
#远程库地址可是使用别名代替,这里的test是别名
git push test master
Клонирование удаленного хранилища в местной библиотеке
- операция клонирования будет завершена удаленных локальных библиотек клонов, чтобы завершить операцию клонирования средства для алгоритма SHA-1 хэш-шифрования для того, чтобы проверить элемент без потери данных в сети передачи
- Локальный каталог не должен
git init
быть инициализирован в местную библиотеку, клонировании успех будет автоматически инициализируется - Если толкатель пытается протолкнуть локальный псевдоним библиотеки, а затем клонировать конфигурацию также создает псевдоним
git clone https://github.com/rawlins2397/test.git
Вытащите удаленный репозиторий в местной библиотеке
- Различная тянуть удаленную библиотека и клонированию дергают, представляющие местную существующую местную библиотеку для проекта, но вытащили последнюю версию файла для слияния
- Вытащив два способа: непосредственно
git pull
и использовать шагgit fetch
иgit merge
git pull
Командаgit fetch
иgit merge
связывание
#该操作将远程库的分支拉取到本地库的一个分支,并没有进行合并,test是远程库别名,master是要拉取的远程库的分支,这个分支拉取成功后可通过test/master来使用
git fetch test master
#将fetch拉取的分支合并到当前分支
git merge test/master
#通过pull可以直接将别名为test的远程库master分支拉取并合并到本地当前分支
git pull test master
Нажмите с разрешением конфликтов версии
- В процессе разработки нескольких членов, модификации одной и той же версии одного и того же файла, что дает приоритет, чтобы подтолкнуть персонал будет подталкивать успешным, вам будет предложено тянуть и толкать их вверх, когда люди толкать после толчка, который толкает конфликт с версией исполнения
Для того, чтобы разрешить конфликт с версией толчка, первая удаленный репозиторий последней версия вытащила местный, из-за конфликт вытягивать отрасль и местное отделение слияния, слияние может означать филиальное разрешение конфликта для разрешения конфликта
поколение SSH публичный ключ
- SSH публичный ключа местная библиотека может быть достигнута с помощью пульта библиотеки свободного секретном безопасной передачи
- Случай только одной операционной системы счета открытый ключ SSH, и, следовательно, путем привязки удаленной библиотеки SSH применяется только для пользователей, как правило, работают только одну учетную запись операционной системы и учетная запись удаленной библиотеки
#切换到用户根目录,查看是否存在something 和 something.pub 来命名的一对文件,这个 something 通常就是 id_dsa 或 id_rsa,如果有,打开.pub文件,其内容就是SSH公钥
cd ~/.ssh
ls
#若不存在,则需要创建一个SSH公钥
ssh-keygen -t rsa -C "[email protected]"
#ssh-keygen的参数为:-t 指定密钥类型,默认是 rsa ,可以省略。-C 设置注释文字,通常为邮,注意C必须为大写。-f 指定SSH存储的文件名。
#运行命令后,若没有使用-f参数,则会提示输入文件名,可回车使用默认值。还会要求输入两次密码,这个密码是用于使用SSH公钥的密码,而非登录远程库帐号的密码,若不需要,直接回车忽略
#.pub文件,其内容就是SSH公钥
Игнорировать файлы сдвинуты в удаленном хранилище
- Проекты часто конфигурационные файлы, сгенерированные редактор кода, эти профили ничего общего с самим проектом, так что, когда проект будет оттеснен на удаленное хранилище, вам необходимо установить толчок, чтобы игнорировать эти файлы
- Редактор кода генерируется профиль, если не обращать внимания на толчок, поставит под угрозу проект развития, так как эти файлы конфигурации, связанные с версией редактора кода не может гарантировать, что проект может использовать только одну версию редактора, так что не игнорировать будет ненужные конфликты слияния
- Перейти https://github.com/github/gitignore видеть игнорируемые файлы , связанные с языком проекта
- Подготовка документов, содержание этого документа, обратитесь к выше URL, а также могут быть пользовательские типы файлов игнорировать, и (если нужно только настроить локальную библиотеку, чтобы игнорировать файл ~ / .gitconfig, локальная библиотека .git / конфигурации конфигурация) введение указанного документа
[core]
excludesfile = C:/Users/rawlins/Java.gitignore