저장소 관리
빈 저장소 생성
로컬의 저장소 복제 (clone)
다음과 같이 원격의 저장소를 복제할 수 있습니다.
저장소 경로 뒤에 특정 폴더를 지정하여 복제하면, 해당 폴더로 저장소의 소스가 복제됩니다.
원격 저장소 추가 (add)
최초 git clone를 한경우에 "origin"라는 이름으로 원격저장소가 추가됩니다.
신규로 추가하는 원격 저장소의 이름은 "origin"을 제외하고 입력하여 추가 가능합니다.
소스 버전 관리
현재 폴더의 변경된 모든 내용을 추가하기
현재 폴더의 변경된 내용 확인하기
참고 : How to make git mark a deleted and a new file as a file move?
git 환경설정
전역 정보 확인
전역 사용자 정보 설정
git 저장소 URL 변경하기
git 저장소 URL에서 서버가 "172.16.111.17"로 지정되어 있는 것을 "172.16.112.72" 번으로 서버를 변경하는 방법은 다음과 같습니다.
먼저 현재 저장소의 URL을 다음과 같이 확인합니다.
set-url 명령을 이용하여 저장소의 URL을 다음과 같이 수정합니다.
다음과 같이 변경된 저장소 URL을 확인할 수 있습니다.
- 참고 : GitHub / Managing Remotes / 원격 저장소 URL 변경하기 ; http://minsone.github.io/git/github-managing-remotes-changing-a-remotes-url
또는 remote origin 저장소를 삭제하고, 새로운 저장소를 origin으로 추가할 수도 있습니다.
GitLab의 다음 두 저장소 주소는 동일합니다.
"ssh://"가 유용한 경우는, 외부로 공개된 SSH port가 일반적인 22번 포트가 아닌 경우에 사용합니다.
아래는 SSH port가 일반적인 22번 포트가 아닌 9022 포트를 이용할 경우에 사용하는 저장소 주소입니다.
브랜치 관련
브랜치 새로 만들기
현재 브랜치 목록 확인하기
브랜치로 전환하기
master 브랜치로 병합하기(merge)
특정 브랜치 삭제하기
Trouble-shooting
push 했을 때, "No refs in common and none specified; doing nothing."라고만 나올 때
"No refs in common and none specified; doing nothing."와 같은 로그가 나타나는 이유는 저장소 상에 아직 master 브랜치가 작성되지 않았기 때문입니다.
push 할 때의 인수가 생략된 경우 기본적으로 원격 저장소와 로컬 저장소 양쪽에 모두 존재하는 브랜치가 push의 대상이 됩니다. 따라서 원격 저장소에 존재하지 않는 브랜치를 push하는 경우에는 저장소와 브랜치를 명시적으로 지정할 필요가 있습니다.
push할 때, "git push -u origin master"와 같이 처음 한번 실행하면 master 브랜치가 만들어지게 됩니다.
이후의 push에서는 저장소와 브랜치의 지정을 생략할 수 있고, 이경우 master 브랜치로 push 됩니다.
참고 : https://backlog.com/git-tutorial/kr/reference/trouble-shooting.html
수정된 소스를 이전 상태로 강제로 되돌릴 때
git pull시 "refusing to merge unrelated histories" 오류 발생 문제
git 저장소를 변경한 이후에 "push"를 하려고 하였을 때, 다음과 같은 오류가 발생합니다.
이 후, 신규 저장소의 내용을 가져오기 위하여 "git pull"을 하면 다음과 같은 오류가 발생하는 경우가 있습니다.
기존 저장소와 신규 저장소간의 기록(history)이 서로 달라서 발생하는 문제입니다.
git에서는 서로 관련 기록이 없는 두 프로젝트를 병합할 때 기본적으로 거부하도록 되어 있습니다.
"--allow-unrelated-histories" 옵션으로, 이것을 허용해 주면 문제를 해결할 수 있습니다.
'프로그래밍' 카테고리의 다른 글
[python] pycrypto를 이용한 DES-ECB 암호화 (0) | 2020.06.11 |
---|---|
[python] pycrypto 설치시 "intmax_t" 오류 발생 대처 방법 (0) | 2020.06.10 |
CentOS에서 Git 저장소 생성하기 (How to create git repository in CentOS) (0) | 2018.12.25 |
[C#] 응용 프로그램의 버전 정보 수정하기 (0) | 2014.06.30 |
FFT(Fourier transform) 관련 글 모음 (0) | 2012.11.14 |