Алгоритм работы с git репозиторием: различия между версиями

Материал из Ай да Linux Wiki
Перейти к навигации Перейти к поиску
(Новая страница: «'''GIT''' – удобная и быстрая децентрализованная система совместной разработки (репозитория)...»)
 
Строка 1: Строка 1:
 
'''GIT''' – удобная и быстрая децентрализованная система совместной разработки (репозитория).
 
'''GIT''' – удобная и быстрая децентрализованная система совместной разработки (репозитория).
 
  
 
== Предварительный настройки git ==
 
== Предварительный настройки git ==
Строка 6: Строка 5:
 
Можно задать глобальную идентификацию:
 
Можно задать глобальную идентификацию:
  
  git config --global user.name "You Name"
+
<source lang="bash">git config --global user.name "You Name"
  git config --global user.email you_name@you_domain.com
+
git config --global user.email you_name@you_domain.com</source>
  
 
Это задаст ваше имя пользователя и почтовый адрес которыми будут подписываться ваши коммиты.
 
Это задаст ваше имя пользователя и почтовый адрес которыми будут подписываться ваши коммиты.
Строка 22: Строка 21:
 
Перейдите в папку где будет размещаться ваш проект и выполните клонирование проекта с сервера:
 
Перейдите в папку где будет размещаться ваш проект и выполните клонирование проекта с сервера:
  
  git clone ssh://you_name@git-server.com/~/you_project
+
<source lang="bash">git clone ssh://you_name@git-server.com/~/you_project</source>
  
 
Протокол доступа к репозирорию зависит от настроек сервера.
 
Протокол доступа к репозирорию зависит от настроек сервера.
  
 
После выполнения создастся папка проекта you_project и в последующем проводить инициализацию больше не нужно.
 
После выполнения создастся папка проекта you_project и в последующем проводить инициализацию больше не нужно.
 
  
 
=== Разработка ===
 
=== Разработка ===
 
  
 
Перед началом разработки необходимо создать локальную ветку и связать её с удалённой (тоже выполнить нужно один раз):
 
Перед началом разработки необходимо создать локальную ветку и связать её с удалённой (тоже выполнить нужно один раз):
  git checkout -b my_branch origin/my_branch
+
<source lang="bash">git checkout -b my_branch origin/my_branch</source>
 
При создании новых файлов необходимо их пометить на добавление в репозиторий:
 
При создании новых файлов необходимо их пометить на добавление в репозиторий:
  git add myfile.txt myfile2.txt myfile3
+
<source lang="bash">git add myfile.txt myfile2.txt myfile3</source>
 
или рекурсивно папки (указанием точки в конце пути)
 
или рекурсивно папки (указанием точки в конце пути)
  
  git add new_path/.
+
<source lang="bash">git add new_path/.</source>
 
После внесения изменений их необходимо зафиксировать в коммит:
 
После внесения изменений их необходимо зафиксировать в коммит:
 
Указываем какие файлы нужно добавить в коммит:
 
Указываем какие файлы нужно добавить в коммит:
  
  git commit myfile.txt myfile2.txt myfile3
+
<source lang="bash">git commit myfile.txt myfile2.txt myfile3</source>
 
после чего потребуется ввести описание изменений или задать описание сразу (использоваться опцию -m):
 
после чего потребуется ввести описание изменений или задать описание сразу (использоваться опцию -m):
  
  git commit myfile.txt myfile2.txt myfile3 -m "описание изменений"
+
<source lang="bash">git commit myfile.txt myfile2.txt myfile3 -m "описание изменений"</source>
 
Чтобы закомминить все произведённые изменения репозитория можно выполнить (использоваться опцию -a):
 
Чтобы закомминить все произведённые изменения репозитория можно выполнить (использоваться опцию -a):
  
  git commit -a -m "описание изменений"
+
<source lang="bash">git commit -a -m "описание изменений"</source>
 
Оправка изменений на сервер:
 
Оправка изменений на сервер:
 
Для отправки измений на общий сервер выполняем:
 
Для отправки измений на общий сервер выполняем:
  
  git push
+
<source lang="bash">git push</source>
 
и все коммиты из локальной ветки будут добавлены в связанную ветку на сервере.
 
и все коммиты из локальной ветки будут добавлены в связанную ветку на сервере.
  
Строка 58: Строка 55:
 
Когда нужно забрать изменения с общего сервера:
 
Когда нужно забрать изменения с общего сервера:
  
  git pull
+
<source lang="bash">git pull</source>
 
Локальная ветка сразу подтянет все изменения из связанной с ней веткой на сервере.
 
Локальная ветка сразу подтянет все изменения из связанной с ней веткой на сервере.
  
 
Для просмотра состояния репозитория регулярно выполняйте:
 
Для просмотра состояния репозитория регулярно выполняйте:
  git status
+
<source lang="bash">git status</source>
 
 
  
----
+
== Ссылки ==
Информация взята с [http://wiki.enchtex.info/howto/%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D1%81_git wiki.enchtex.info]
+
[http://wiki.enchtex.info/howto/%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B_%D1%81_git wiki.enchtex.info]

Версия 18:21, 15 апреля 2011

GIT – удобная и быстрая децентрализованная система совместной разработки (репозитория).

Предварительный настройки git

Можно задать глобальную идентификацию:

git config --global user.name "You Name"
git config --global user.email you_name@you_domain.com

Это задаст ваше имя пользователя и почтовый адрес которыми будут подписываться ваши коммиты.

Распределённая разработка проекта

Условия:

  • Есть общий сервер git-server (которым, например, может выступать GitHub.
  • Каждый разработчик работает с репозиторием проекта локальный и регулярно обмениваться информацией с общим сервером (выгружает свои изменений и закачивает общие)

Инициализация

Перейдите в папку где будет размещаться ваш проект и выполните клонирование проекта с сервера:

git clone ssh://you_name@git-server.com/~/you_project

Протокол доступа к репозирорию зависит от настроек сервера.

После выполнения создастся папка проекта you_project и в последующем проводить инициализацию больше не нужно.

Разработка

Перед началом разработки необходимо создать локальную ветку и связать её с удалённой (тоже выполнить нужно один раз):

git checkout -b my_branch origin/my_branch

При создании новых файлов необходимо их пометить на добавление в репозиторий:

git add myfile.txt myfile2.txt myfile3

или рекурсивно папки (указанием точки в конце пути)

git add new_path/.

После внесения изменений их необходимо зафиксировать в коммит: Указываем какие файлы нужно добавить в коммит:

git commit myfile.txt myfile2.txt myfile3

после чего потребуется ввести описание изменений или задать описание сразу (использоваться опцию -m):

git commit myfile.txt myfile2.txt myfile3 -m "описание изменений"

Чтобы закомминить все произведённые изменения репозитория можно выполнить (использоваться опцию -a):

git commit -a -m "описание изменений"

Оправка изменений на сервер: Для отправки измений на общий сервер выполняем:

git push

и все коммиты из локальной ветки будут добавлены в связанную ветку на сервере.

Получение последних изменений с сервера Когда нужно забрать изменения с общего сервера:

git pull

Локальная ветка сразу подтянет все изменения из связанной с ней веткой на сервере.

Для просмотра состояния репозитория регулярно выполняйте:

git status

Ссылки

wiki.enchtex.info