== Git 소개 ==
*저자는 리눅스 토발즈이다
*리눅스 커널을 관리하기 위해 개발 되었다.
*라이센스는 GNU GPL V2 이다.
*분산 개발이 가능하다.
*다른 SCM 대비 속도가 빠르다.
*Git를 사용하는 대표적인 프로젝트는 리눅스 커널이다.
== Git 기본 설정 ==
=== 매번 비밀번호 입력하지 않기 ===
마이페이지->회원정보->코드저장소 SSH 인증키 설정에서 public key 집어 넣은 다음 갱신을 누르면 됩니다.
CVS/Git 등등의 SSH를 통한 개발 작업 과정에서 비밀번호를 매번 입력하지 않는 대신에 ssh-keygen으로 public key를 발급해서 이곳에 등록하실 수도 있습니다. 입력된 정보는 CVS/Git 서버의 ~/.ssh/authorized_keys 파일에 저장됩니다. 이 절차는 cronjob에 의해 이루어지므로 즉시 효력을 가지지 않습니다. 1시간 정도면 반영됩니다.
public key를 발급받으시려면 'ssh-keygen'을 수행하시고(암호 없이) '~/.ssh/id_rsa.pub' (protocol 1) 혹은 '~/.ssh/id_dsa.pub' 혹은 '~/.ssh/id_rsa.pub' (protocol 2) 내용을 복사해서 입력해주시기 바랍니다. 자세한 내용은 ssh 매뉴얼을 참조하세요.
==== dsa protocol 사용해서 pub key 만들기 ====
# ssh-keygen -t dsa
==== rsa protocol 사용해서 pub key 만들기 ====
# ssh-keygen -t rsa
인증키:
생성된 키 파일에 없는 라인 나누기가 되지 않도록 붙여넣기에 주의하세요
== Git에게 저자 알려 주기 ==
아래 명령을 실행하면, 자기 계정 밑에 .gitconfig 라는 파일에 저장하게 됩니다.
# git config --global user.email 이메일 주소
# git config --global user.name 자기 이름
git config에 대하여 자세한 내용은 man git-config를 참조하기 바랍니다.
== 저장소 복제하기 ==
# git clone ssh://계정@dev.odroid.com/gitroot/프로젝트명
== 파일 추가 ==
# git add path/to/some/files
== 제출하기 ==
# git commit path/to/some/files
이 명령은 단지 로컬 저장소에 올리는 것입니다. '''git push'''를 해야만 실제 원격 저장소에 변경 및 추가된 내용이 반영됩니다.
== 파일 추가 및 제출 동시에 하기 ==
# git commit -a -m"내용"
== 원격 저장소에 올리기 ==
# git push
== 기록 보기 ==
# git log
== Git 관련 정보 ==
http://www.git.or.cz
http://git-scm.com
http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html
http://www.kernel.org/pub/software/scm/git/docs/user-manual.html
http://www.kernel.org/pub/software/scm/git/docs/everyday.html