2013년 11월 22일 금요일

git hub 몇가지 노트

간단한 명령어 소개 링크 : http://unikys.tistory.com/323
-> 명령어를 잘 정리해 놓은 링크
내가 사용하는 몇가지 명령어 참조: http://chriskr7.blog.me/60203914580
1. 우선 깃헙에 리파지토리를 만든다.
2. 내 로컬에 git폴더를 만들고 리파지토리와 동일한 이름의 폴더를 만든다.
3. 커맨드 창에서 'git init' 명령어로 초기화 한다.
4. git remote add origin https://github.com..... 을 통해서 나의 리파지토리 url을 origin으로 설정
(git remote set-url origin https://UserID@github.com/UserID/repository.git 을 통해 변경가능)
5. git add . (or git commit -a) 명령어로 파일들을 더한다.
6. git commit 명령어로 커밋한다. (리눅스에서 커밋 코멘트를 다는 화면으로 이동한다)
7. git push -u origin master 명령어로 origin의 master 브랜치로 푸시한다.
8. git pull origin 명령어로 origin의 변경 내용을 내려받을 수 있다.


머지하기
출처: http://yaku.tistory.com/334
출처: http://gitref.org/branching/

git branch
-> 현재 브랜치를 확인한다.
git merge target
-> 타겟 브랜치를 현재 브랜치에 머지한다.
(git checkout -b change_class
Switched to a new branch 'change_class')
컨플릭트가 발생하면
git diff
-> 다른 항목들의 (컨플릭트가 발생한 항목) 내용을 확인 할 수 있다.
에디터로 해당 항목을 연 후
(git merge fix_readme
Auto-merging README
CONFLICT (content): Merge conflict in README
Automatic merge failed; fix conflicts and then commit the result.
$ cat README 
<<<<<<< HEAD
Many Hello World Examples
=======
Hello World Lang Examples
>>>>>>> fix_readme

This project has examples of hello world in 
nearly every programming language.)
>>>>>>>> 와 ======= 또는 <<<<<<<< 로 이루어진 항목을 찾아가서 해당 컨플릭트를 해결하면 된다. 현재까진 직접 중복 결과값을 수정해도 문제 없었다.
$ git status -s
UU README
$ git add README 
$ git status -s
M  README
$ git commit 
[master 8d585ea] Merge branch 'fix_readme'
위에 상태 확인을 했을 때 UU 항목이 컨플릭트 등에 의해서 머지가 제대로 안된 항목
컨플릭트를 해결한 후 add시키면 된다.
그 후에 커밋하면 끝.

Ignore 설정하기
출처: http://rapapa.net/?p=85
어느 소스폴더에서 "git init"를 한 폴더 전체가 소스관리 대상에 포함된다.
(git init 는 git로 현재폴더를 소스관리 하겠다는 명령어)
.git이 있는 최상위폴더 (git init을 한 폴더)에서
.gitignore 파일을 만든다
내용은 커밋을 제외하는 내용을 적으면 된다. (출처 참조)
글로빙 규칙에 맞춰서 적으면 된다.
이미 커밋이 되어 있던(사용중이던) 폴더라면
제외 시켜주면 되는데
출처에 나온 git rm 명령을 쓰면 된다.
제외 시킬 파일을 미리 확인하고 싶으면
git rm --dry-run *.log(제외시킬 파일 글로빙)
이렇게 하면 된다.

댓글 없음:

댓글 쓰기