git, git-flow EVA
SCM(souce code management) • Server/Client – SVN, CVS, Perforce • 분산 저장소 타입 – Git, Mercurial
SVN 가지고 잘 쓰고 있었음...
Git의 특별함을 느낄 수 있는 SVN과 비교되 는 몇 가지 차이점 • 중앙 저장소를 복제하여 로컬 저장소를 갖는다. • 중앙 저장소가 아닌 로컬 저장소에 커밋한다. • 스냅샷으로 관리되는 구조이다. • 브랜치를 쉽게 만들 수 있으며 전환이 빠르다. • 파일 단위가 아닌 데이터를 관리한다. • 빈 디렉토리는 커밋할 수 없다. • Staging - Commit - Push. • 파일의 일부분(내용)만 커밋할 수 있다. • 숫자가 아닌 Hash 문자열로 커밋을 구분한다. • 커밋의 순서를 바꿀 수 있고, 나누거나 합칠 수 있다. • 여러 개의 원격 저장소(중앙 저장소)를 둘 수 있다. • Branch, Tag를 생성할 때 파일을 전부 복제하지 않고 효율 적으로 관리한다.
처음 대하는 마음 가짐 대세라고 하는데... 굳이 나한테 필요 있나?! 지금도 SVN 가지고 잘 쓰고 있음...
그래도 한번 시도 해보는건 좋겠지? 왜?! github이 있기때문...
일단 모냥새가 이쁜 github 한번 써보자고 시작된... git....
http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
응?! 일단 모르겠다... add, commit 하면 된다네!! http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
http://rogerdudler.github.com/git-guide/index.ko.html
누가 과연 git 이 쉽다고 했던가?!
사용법 어려움...
그리고 명령어 치기 번거롭... git init git clone ssh://.... git add README.md git commit –m “add README file” git push git checkout master
http://www.sourcetreeapp.com/
원래 머큐리얼 지원하던 도구... 상용제품으로 팔던 제품... Atlassian(JIRA, Confluence, bitbucket)인수 후 무료로 배포
그.래.서 you need a Mac
git-flow 브랜치 이름을 강제하고 git 명령 어를 줄여주는 도구
$ git-flow init Initialized empty Git repository in d:/Projects/git-flow- test/.git/ No branches exist yet. Base branches must be created now. Branch name for production releases: [master] Branch name for "next release" development: [develop] How to name your supporting branch prefixes? Feature branches? [feature/] Release branches? [release/] Hotfix branches? [hotfix/] Support branches? [support/] Version tag prefix? []
$ git flow feature start addtoken Switched to a new branch 'feature/addtoken' Summary of actions: - A new branch 'feature/addtoken' was created, based on 'develop' - You are now on branch 'feature/addtoken' Now, start committing on your feature. When done, use: git flow feature finish addtoken
$ git flow feature finish addtoken Switched to branch 'develop' Already up-to-date. Deleted branch feature/addtoken (was 7273049). Summary of actions: - The feature branch 'feature/addtoken' was merged into 'develop' - Feature branch 'feature/addtoken' has been removed - You are now on branch 'develop'
참고자료 http://allofsoftware.net/238 http://blog.xmz.kr/?mid=textyle&document_srl=7815

git, git flow