"),console.log("Таблица стилей "+e+" добавлена")},window.addscript=function(e,s){document.write('
Это - никоим образом не исчерпывающее руководство по использованию git. За фундаментальным учебником милости просим на git-scm, он даже почти полностью переведён на русский. А здесь описан типовой алгоритм добавления чего-нибудь.
Внимание! Для bitbucket схема немного другая. То, что написано здесь, ориентировано на студентов, проходящих практику на матфаке ВГУ.
Примечание: для студентов, проходящих практику на загрузочных дисках (LiveCD), это нужно делать при каждом включении компьютера.
cd git/chas-egeПодсказка: после ввода команды нажимайте Enter. Будьте внимательны, не путайте буквы.
git config --global user.name "Василий Пупкин"
git config --global user.email super1vasya@pochtarossii.ruЕсли Вы ошиблись на этом этапе - не спешите стучать по резету, команды можно переделывать по нескольку раз.
git config --global color.ui trueЗдесь сложно ошибиться, но тоже можно делать несколько раз.
git remote add myfork https://github.com/vasya/chas-ege.gitгде vasya - Ваш ник на гитхабе. Удалённый - это от слова "далеко", а не от слова "удалить".
git checkout devel
git pull origin devel
git checkout -b newtask-777где 777 - это номер таска на гитхабе.
window.nomer=[ 12, ].iz();где 12 - номер сделанного Вами задания. Это странно, но так потом легче дописывать.
git statusЭта команда ничего не изменяет, только показывает, где мы и что там происходит. Если всё сделано правильно, то названия изменённых и добавленных файлов будут выделены красным. Зря мы, что ли, вывод красили? Смотрим, что перечислены только нужные файлы.
git diffПроматывать стрелочками вверх и вниз на клаве, выход, если что - клавиша Q в английской раскладке. Это надо в основном для того, чтоб не наделать чего-нибудь лишнего. Добавленное - зелёным и с плюсом, удалённое - красным и с минусом. Красные квадратики - это пробелы на концах строк, их надо убрать, открыв файлы, и повторить команду.
git status
git add имя/файлавсе нужные файлы. А можно и одним махом:
git add .
git statusНужные файлы должны быть зелёными.
git commit -m "Сделана задача №77, обзад №12345, matege2016p/B11/77.js"Если ошиблись в сообщении коммита и заметили это сразу, то можно легко исправить:
git commit -m "Сделана задача №78, обзад №12345, matege2016p/B11/78.js" --amend
git push myfork newtask-777:newtask-777где newtask-777 - имя Вашей ветки.
Внимание! Каждая новая задача - это по сути однокоммитная ветка. Поэтому, пока пуллреквест ожидает одобрения, после переключения на ветку devel этой задачи у Вас в репозитории не будет. Не пугайтесь!
Ребейз (rebase) - это такая замечательная операция, которая позволяет применить коммиты к другому исходному состоянию. Подробнее про неё можно прочесть в этом разделе git-scm. Смысла переписывать учебник не вижу. Нам она нужна на случай, если ветка devel на гитхабе убежала вперёд, чтобы не засорять историю паутиной. А ещё она очень полезна, когда несколько изменений свалены в одну ветку, а их хочется разнести по разным. Или объединить коммиты.
git statusДопустим, вывод был таким:
# On branch newtask-123 nothing to commit (working directory clean)Вот название newtask-123 надо запомнить.
git checkout develОбратите внимание: флага -b здесь нет.
git pull origin devel
git checkout newtask-123Общее правило такое: если мы создаём новую ветку, то -b есть, а если прыгаем на существующую - то нет.
git checkout -b newtask-123aНазвание можно выбрать относительно произвольное, лишь бы было понятно.
git rebase -i develЭто означает: "перенести текущую ветку так, как будто мы начали работу с новым вариантом devel". Откроется окошко текстового редактора. Там можно подправить, что переносить, а что нет (что не переносить - просто удалить). Можно переименовать коммит, написав вместо pick слово reword. Сохранить - Ctrl+O, выйти - Ctrl+X. Обычно достаточно просто выйти.
git branch