Git

jjuiddong
Jjuiddong (토론 | 기여) 사용자의 2013년 3월 27일 (수) 14:14 판

이동: 둘러보기, 찾기

git pro 문서 요약

파일은 세 가지 상태로 나눌수 있다.

  • unmondified : track 하고 있는 파일 중에 수정되지 않는 파일을 뜻함
  • modified : track 하고 있는 파일 중에 수정되었지만, stage 되지 않는 파일
  • staged : track 하고 있는 파일 중에 수정하고 난 후 commit 하기위한 상태

파일은 track 과 untrack 으로 나누는데, git으로 관리하는 파일이냐 아니냐를 뜻한다.

GitHub에서 소스가 충돌이 났을 때 처리

  1. git shell 을 실행시킨다.
  2. $git status 명령어로 현재 프로젝트 상황을 출력한다.
  3. 나와있는대로 따라하자. 그러면 적어도 충돌은 없어진다.
    • 다만 소스가 전 버전으로 돌아갈 수 있으니 미리 백업해두자.


Git 명령어 정리

pro git 문서 내용을 참조해서 정리했다. 다음 명령어들은 windows용 github 프로그램에서 실행한 gitshell 명령어를 정리한 것이다. 다시말하면, 이미 프로젝트가 선택된 상태에서 gitshell 을 실행하기 때문에, 이미 저장소가 선택된 상태임을 의미한다.

  • $git status : 프로젝트 상태 확인
  • $git --cached [file name] : .gitignore 에 파일을 제외하는 것과 같다.
  • $cat .giignore : ignore 파일을 출력한다.
  • $git log : commit history 출력
    • $git log -p -2 : commit 의 diff 출력, 최근 2개의 commit만 출력한다.
  • $git reset HEAD [file name] : staging 상태에 있는 파일을 unstage 상태로 이동시킨다.
  • $git checkout -- [file name] : commit 된 파일 버전으로 선택한 파일을 덮어씌운다. commit되지 않는 파일은 복구할 수 없으니, 조심해야하는 명령어다. 이 명령어보다는 stashing 과 branch를 사용하자.
  • $git remote -v : 리모트 저장소 확인
  • $git fetch [remote-name] : 로컬에는 없지만 리모트 저장소에 있는 파일을 모두 가져온다. 머지는 수동으로 해야함
  • $git clone [remote-name = origin] : 자동 track
  • $git pull [remote-name = origin] : 자동 머지
  • $git push [remote-name = origin] [branch-name] : 리모트 저장소에 파일을 올린다. ex) $git push origin master
  • $git remote show [remote-name] : 리모트 저장소의 정보를 표시한다.
개인 도구
이름공간

변수
행위
둘러보기
도구모음