Git

From StrelaWiki
Jump to navigation Jump to search

Global setup:

Set up git
 git config --global user.name "Jan Musinsky"
 git config --global user.email musinsky@gmail.com
     

Next steps:

 mkdir AliRsnOutManager
 cd AliRsnOutManager
 git init
 touch README
 git add README
 git commit -m 'first commit'
 git remote add origin git@github.com:musinsky/AliRsnOutManager.git
 git push -u origin master
     

Existing Git Repo?

 cd existing_git_repo
 git remote add origin git@github.com:musinsky/AliRsnOutManager.git
 git push -u origin master
     

Importing a Subversion Repo?

 Click here
     

When you're done:

 Continue
https://github.com/github/markup#readme



git clone --depth 10 git://github.com/emacsmirror/emacs.git

last 10 commits


git status
git add .
git status
git commit -m "find multiple hits per one channel"
git status
git push
git status
git checkout mvala-mini-aliroot
porbobit, commit
git push origin mvala-mini-aliroot


zmenil som napr. manualne na githube, preniest zmeny z 'origin'(remote) do 'master'(local)
 git pull origin master

http://jenyay.net/Programming/Git
Теперь в обоих этих ветках содержатся одинаковые исходники, но в ветке "hello" остается старый файл hello.py, но нас это не должно волновать, так как больше нам эта ветка не понадобится. Давайте ее удалим, для чего выполним следующую команду:

git branch -d hello

Здесь параметр -d говорит, что ветку "hello" нужно удалить. При этом обязательным условием является то, что изменения в указанной ветке обязательно должны быть предварительно слиты с другой веткой. Если это не так, а удалить ветку все-таки надо, то вместо параметра -d нужно использовать параметр -D.


В Git, в отличие от SVN, есть одна, возможно неприятная, особенность. Дело в том, что при клонировании файл exclude будет создан пустым, и его придется заполнять заново. Также не будут клонированы локальные для репозитория настройки из файла config. Об этом надо помнить, если вы используете какие-то локальные настройки, ну а про файлы-исключения приходится помнить всегда.


Чтобы отправить изменения родителю достаточно выполнить следующую команду:

git push

До версии Git 1.7 эта команда была бы выполнена, но с длинным предупреждением о том, что вы собираетесь отправить изменения в удаленный репозиторий, но в данный момент с ним может кто-то работать, и это может быть причиной проблем. Начиная с версии 1.7 разработчики поступили просто: по умолчанию нельзя выполнять операцию push в удаленный репозиторий для веток (в нашем случае для ветки master), если в этом самом удаленном репозитории эта самая ветка является текущей (то есть над ней кто-то может работать). Поэтому начиная с версии Git 1.7 мы получим следующую ошибку:

~./bashrc

source /etc/bash_completion.d/git
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '
alias vncserver='vncserver -geometry 1680x900'
./configure --with-pythia6-uscore=SINGLE --enable-roofit --enable-minuit2 --enable-gsl-shared --disable-editline --disable-globus


GitHub wiki:

![Example Chart](http://chart.apis.google.com/chart?chd=s:FZy&chs=100x100&cht=lc&chtt=Foo "Simple Line Chart")
svn export project_dir new_dir