пятница, 19 мая 2023 г.

Git intra

Хорошая статья про устройство git - https://maryrosecook.com/blog/post/git-from-the-inside-out 
Интерактивный тур - https://githowto.com/ru
Книга by Scott Chacon and Ben Straub - https://git-scm.com/book/en/v2

Базовые команды git

git --version

В файле .gitconfig — в нём хранятся глобальные настройки программы
git config --global user.name "My Name" # вводите латиницей и в кавычках
git config --global user.email my@email.com # здесь e-mail 

git config --list # 
вывели в окно командной строки список всех свойств конфига

Создание, отображение, добавление 

# Сначала создаём папку для проекта, назовём её my-projects

mkdir my-project # создали папку my-project в текущей директории 
cd my-project # перешли в созданную папку my-project 
git init # инициализировали git в папке my-project


Создание локального репозитория 

в Git любой файл репозитория находится в одном из четырёх состояний: 
  • неотслеживаемый (англ. untracked), 
  • добавленный в индекс, индексируемый (англ. staged, «выдвинутый на плацдарм»),
  • изменённый (англ. modified), 
  • боевой, на жаргоне разработчиков «коммит» или «закоммиченный» (англ. committed, «брошенный в бой»).

Команды Git, выполняют одну из трёх задач:
  • изменяют состояние файла; 
  • отображают информацию о файле; 
  • показывают разницу между его версиями.

git add название_файла # команда для добавления файлов в индекс Staging Area 
git add --all # добавить все файлы к остлеживанию 

git commit -m "My first commit" # сделали первый коммит git clone [адрес, откуда копируем] [путь до папки, куда копируем] 

git push -u origin master #origin - имя сервера, master - имя ветки, u - связывает локальную ветку с веткой удалённого репозитория. Этот ключ нужен, только если вы публикуете новые ветки.


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

.gitignore

# комментарий — эта строка игнорируется 
# игнорировать файлы с расширением 
.pyc, 

# * - любое количество символов (ноль и больше), 
*.pyc 

# НО отслеживать файл main.pyc 
# несмотря на то, что мы игнорируем все .pyc файлы с помощью предыдущего правила 
!main.pyc 

# ? - ноль или один символ 
# Исключить файлы text.txt, test.txt, tet.txt и т.д. 
te?t.txt 

# игнорировать только файл main.py находящийся в корневом каталоге 
# не относится к файлам вида <папка>/main.py 
/main.py 

# игнорировать все файлы в каталоге .idea/ 
.idea/ 

# игнорировать файлы с расширением .txt, только в папке doc, но не в подпапках папки doc doc/*.txt 

# игнорировать все .txt файлы в каталоге doc/ и всех его подкаталогах 
doc/**/*.txt


Комментариев нет:

Отправить комментарий