"Git"의 두 판 사이의 차이

jjuiddong
이동: 둘러보기, 찾기
(Git 명령어 정리)
 
(한 사용자의 중간의 편집 15개 숨겨짐)
1번째 줄: 1번째 줄:
=== git pro 요약 ===
+
=== git 도움말 ===
 +
* http://rogerdudler.github.io/git-guide/index.ko.html
 +
* DropBox 를 이용해서 git을 사용하기
 +
** http://fra3il.tistory.com/139
 +
* git flow
 +
** http://ohgyun.com/402
 +
* git server 설치
 +
** http://wharak.egloos.com/236436
 +
** http://wharak.egloos.com/260244
 +
 
 +
=== Git 서버 설치 ===
 +
* [[Git Server]]
 +
 
 +
=== git pro 문서 요약 ===
 
파일은 세 가지 상태로 나눌수 있다.
 
파일은 세 가지 상태로 나눌수 있다.
 
* unmondified : track 하고 있는 파일 중에 수정되지 않는 파일을 뜻함
 
* unmondified : track 하고 있는 파일 중에 수정되지 않는 파일을 뜻함
6번째 줄: 19번째 줄:
  
 
파일은 track 과 untrack 으로 나누는데, git으로 관리하는 파일이냐 아니냐를 뜻한다.
 
파일은 track 과 untrack 으로 나누는데, git으로 관리하는 파일이냐 아니냐를 뜻한다.
 
  
 
=== GitHub에서 소스가 충돌이 났을 때 처리===
 
=== GitHub에서 소스가 충돌이 났을 때 처리===
  
 +
=== Shell 을 이용해서 충돌 처리하기 ===
 
# git shell 을 실행시킨다.
 
# git shell 을 실행시킨다.
 
# $git status 명령어로 현재 프로젝트 상황을 출력한다.
 
# $git status 명령어로 현재 프로젝트 상황을 출력한다.
 
# 나와있는대로 따라하자. 그러면 적어도 충돌은 없어진다.
 
# 나와있는대로 따라하자. 그러면 적어도 충돌은 없어진다.
 
#* 다만 소스가 전 버전으로 돌아갈 수 있으니 미리 백업해두자.
 
#* 다만 소스가 전 버전으로 돌아갈 수 있으니 미리 백업해두자.
 +
#* 만약 rebase 명령어를 요구한다면 조심해야 한다. 분명 소스가 날라갈거니까. 그렇더라도 충돌을 없애려면 이방법 밖에 없다.
  
 +
=== SourceTree 를 이용해서 충돌 처리하기 ===
 +
* origin/master, origin/HEAD 가 현재 최신 코드를 가르키는 master와 다른 위치에 있을 때, 두 브랜치를 하나로 합쳐야 한다. 이 때, SourceTree 에서 origin/master가 있는 위치에서 마우스 오른쪽 버튼을 눌러 메뉴를 활성화 해서 reset current branch to this commit 를 선택한다.
 +
* 이렇게 하면, origin/HEAD가 가르키는 브랜치를 최신 브랜치를 향하게 한다.
 +
** 하지만 확실히 검증된게 아니기 때문에 좀더 연구해봐야 한다.
  
=== Git 명령어 정리 ===
+
* [[Git 명령어 정리]]
''' pro git 문서 내용을 참조해서 정리했다. '''
+
* [[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]''' : 리모트 저장소의 정보를 표시한다.
+

2014년 1월 23일 (목) 09:43 기준 최신판

목차

[편집] git 도움말

[편집] Git 서버 설치

[편집] git pro 문서 요약

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

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

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

[편집] GitHub에서 소스가 충돌이 났을 때 처리

[편집] Shell 을 이용해서 충돌 처리하기

  1. git shell 을 실행시킨다.
  2. $git status 명령어로 현재 프로젝트 상황을 출력한다.
  3. 나와있는대로 따라하자. 그러면 적어도 충돌은 없어진다.
    • 다만 소스가 전 버전으로 돌아갈 수 있으니 미리 백업해두자.
    • 만약 rebase 명령어를 요구한다면 조심해야 한다. 분명 소스가 날라갈거니까. 그렇더라도 충돌을 없애려면 이방법 밖에 없다.

[편집] SourceTree 를 이용해서 충돌 처리하기

  • origin/master, origin/HEAD 가 현재 최신 코드를 가르키는 master와 다른 위치에 있을 때, 두 브랜치를 하나로 합쳐야 한다. 이 때, SourceTree 에서 origin/master가 있는 위치에서 마우스 오른쪽 버튼을 눌러 메뉴를 활성화 해서 reset current branch to this commit 를 선택한다.
  • 이렇게 하면, origin/HEAD가 가르키는 브랜치를 최신 브랜치를 향하게 한다.
    • 하지만 확실히 검증된게 아니기 때문에 좀더 연구해봐야 한다.
개인 도구
이름공간

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