git기초 14

github#18 git pull request 충돌 & command line 해결

다양한 브랜치에서 동시에 작업을 하고 remote repository 에 push 를 한다면 충돌은 피할 수 없을 것이다. 이럴 때 해결할 수 있는 방법 중 하나에 대해서 알아본다. 앞에 글은 web browser을 이용한 merge 였다면 이번에는 cmd line을 이용해 해결해 보자 [IT/DevOps] - github#17 git pull request 충돌 & web editor 해결 먼저 충돌이 될 상황을 만들어 준다. 가정 [feature4] Branch에서 text1.txt 파일을 수정하고 있는데 이와 동시에 [master] Branch에서 동일한 파일을 수정하고 있다. 같은 라인을 수정하고 있다고 가정하자. [feature4] 가 remote repository로 push [master] ..

DevOps/GIT 2020.11.27

github#17 git pull request 충돌 & web editor 해결

다양한 브랜치에서 동시에 작업을 하고 remote repository 에 push 를 한다면 충돌은 피할 수 없을 것이다. 이럴 때 해결할 수 있는 방법 중 하나에 대해서 알아본다. 먼저 충돌이 될 상황을 만들어 준다. 가정 [feature3] Branch에서 text1.txt 파일을 수정하고 있는데 이와 동시에 [master] Branch에서 동일한 파일을 수정하고 있다. 같은 라인을 수정하고 있다고 가정하자. [feature3] 가 remote repository로 push [master] 가 remote repository로 push 원본파일 feature3 의 상황 % git checkout -b feature3 Switched to a new branch 'feature3' % git commi..

DevOps/GIT 2020.11.27

github#16 git pull request & git merge request 2편

저번에 이어서 Pull request 에 대해 더 자세히 알아보자. [IT/DevOps] - github#15 git pull request & git merge request 1편 새로운 브랜치 feature2 를 만들고 2번의 commit을 한 후 push 한다. % git push -u origin feature2 Enumerating objects: 8, done. Counting objects: 100% (8/8), done. Delta compression using up to 8 threads Compressing objects: 100% (4/4), done. Writing objects: 100% (6/6), 519 bytes | 519.00 KiB/s, done. Total 6 (del..

DevOps/GIT 2020.11.27

github#14 git project 잘 관리하기

생활코딩 강의를 듣다가 유용한 자료라서 아티클을 첨부한다. nvie.com/posts/a-successful-git-branching-model/ A successful Git branching model In this post I present a Git branching strategy for developing and releasing software as I’ve used it in many of my projects, and which has turned out to be very successful. nvie.com 이 저자가 최신버전 git-flow 도 업데이트 했다. guides.github.com/introduction/flow/ Understanding the GitHub flow · ..

DevOps/GIT 2020.11.26

github#13 git rebase 충돌해결

다른사람과 협업을 할 때에 Remote Repository 에 있는 소스코드는 어지간 하면 rebase 하지 않도록 주의하자. 만약 본인 것의 코드만 업데이트 혹은 rebase 하고 싶다면 먼저 git pull로 최신버전의 코드를 Remote Repository 에서 받아서 working directory 에서 작업을 commit 하면서 rebase 를 하도록한다. 모든 작업이 다 마친후에 git push를 해서 Remote Repository 에 코드를 업데이트 하면 좋을 것 같다. 충돌이 나는 상황을 만들어 보자. 1. [Master Branch] a.txt 파일을 commit 한다. - 첫번째 commit 파일 내용 aaaa % vi a.txt % git add a.txt % git commit -..

DevOps/GIT 2020.11.26

github#12 git rebase 기초

ref : www.perforce.com/blog/vcs/git-rebase-vs-merge-which-better Git Rebase vs. Merge: Which Is Better? | Perforce Software Compare Git rebase vs. Git merge to determine which is better. www.perforce.com git merge가 git rebase 보다 더 안전한 방법이다. 그러므로 깃에 어느정도 익숙해진 사람, 꼭 이 기능을 필요로 하는 사람에게만 사용을 권장한다. git merge 와 git rebase 의 차이점에 대해 알아보자. 위의 링크에서는 이렇게 설명한다. Git merge is a command that allows you to merg..

DevOps/GIT 2020.11.26

github#11 git tag 와 branch 차이

git tag 는 주로 버전을 릴리즈 할 때 사용한다. branch 와 가장 큰 차이점은 branch는 commit 할때마다 commit ID 가 업데이트 되지만 git tag는 특정시점의 version 을 알려주는 거라고 이해하면 되겠다. 고정된 값이라고 할수있다. #file한개를 생성하고 커밋을 한다 % vi text1.txt % git add text1.txt % git commit -m "1" [main f771c29] 1 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 a.txt create mode 100644 text1.txt #그 후 다시한번 동일한 파일을 수정하고 2번쨰 커밋을 한다. % vi text1.txt % gi..

DevOps/GIT 2020.11.25

github#9 git remote repository

다른사람과의 협업이나 나의 코드 백업을 위해서는 원격저장소가 remote repository 가 필요하다. 전체적인 흐름을 보면 아래와 같다. 1. local 과 remote repository 개념 이해하기 이번 실습은 remote repository 이 로컬머신에 있는 경우의 실습이다. 이제 나의 machine 에 local repository 를 만들어 보자. 지금 작업하고 있는 working directory 아래에 local repository를 위한 새로운 directory를 만든다. % mkdir local % cd .. % cd gitproject/local #first.txt라는 파일을 만들고 add하고 commit 함 % vi first.txt % git add first.txt % g..

DevOps/GIT 2020.11.21

github#8 git stash

내가 현재 여러 브랜치를 가지고 작업을 하고 있으나 내가 작업하는 브랜치 working directory에서 작업 중에 작업을 다 마치지 못했을 경우 commit을 할 수 도 없고 그렇다고 그냥 남겨 둔 채로 다른 브랜치로 체크아웃을 하면 다른 브랜치에서 작업한 내용이 다른 브랜치에 영향을 준다 git status 로 확인할 수 있다. 이럴 때 사용할 수 있는 명령어가 stash 이다. NAME git-stash - Stash the changes in a dirty working directory away SYNOPSIS git stash list [] git stash show [] [] git stash drop [-q|--quiet] [] git stash ( pop | apply ) [--ind..

DevOps/GIT 2020.11.20

github#7 3 ways merge

git merge에서 conflict 가 발생하면 쉽게 수정할 수 있는 툴이 있다. - kdiff3. Google 에 검색하면 download 가능 하니 필요한 분은 검색 해 보길 바란다. 그리고 다양한 사람과 협업을 하기 때문에 다른이와 작업을 merge하는 방법을 알아보자. 여기에는 2가지 방식이 있는데 2 way merge 3 way merge 3 way merge 방식이 더 안전하고 적은 conflict 을 발생하는 방법이라 할 수 있다. 예를 들어 A 개발자, B 개발자가 각자의 브랜치에서 동시에 작업을 수행한 후 병합하고자 한다면 아래와 같은 표로 표현 할 수 있다. 예를 들어 A file : contents 는 파일명은 A 안에 내용은 contents 라고 볼 수 있고 C file 같은 경우..

DevOps/GIT 2020.11.20