- 목차
Branch?? Fork??
| 구분 | Branch | Fork |
|---|---|---|
| 개념 | 프로젝트 참여자 | 프로젝트를 복제하여 개인적으로 사용 |
| 해당 프로젝트의 관련자 | O | X |
| 사용 예시 | 팀 프로젝트 | (외부) 오픈소스 |
| 원본 프로젝트에 PR | O | O |
| 예시? | 치킨 양념 레시피 개발자 | 치킨 양념 레시피를 기초로 하여 독자적 개발 원래 개발자에게 피드백 |
Push 대화상자에서 브랜치 목록이 보이지 않음
- 해결방법
- Sourcetree 업데이트
- 옵션에서 내장 Git 업데이트
- 도구 → 옵션 → Git → 브랜치 푸시 → “매칭” 에서 “간단” 으로 변경
- 본인의 경우에는 “간단” 에서 "매칭"으로 변경
- 출처
[Error] 패치 명령 실행시 에러
- 해결방법
터미널에서 아래 명령을 실행
$ git gc --prune=now
$ git remote prune origin
- 출처
[Error] 큰 사이즈의 변경 사항의 Push 시도 실패. 오류 메시지에 postbuffer 관련 문구 존재
- 방법 1 : 터미널에서 아래 명령을 실행 (숫자는 변경가능, --global 빼도 될듯?)
$ git config --global http.postBuffer 157286400
- 방법 2 : config 파일에서 아래 구문 추가
[http]
postBuffer = 524288000
- 출처
로컬 프로젝트를 이용하여 (히스토리를 유지하여) 리모트에 Push
- 사용시점 : 기존에 사용하던 Git 서버가 손상되어 로컬 프로젝트를 이용하여 새로운 Git 서버로 프로젝트를 옮길 때 사용한다.
- 한계점 : Remote Branch에 대한 정보는 유지되지 않는다.
- 터미널 명령어 방법 1 : 모든 Local Branch가 Remote Branch로 Push된다.
(쌍따옴표 부분을 원하는 것으로 변경!)
// Gitlab 기준
git push --all --set-upstream "git 주소"/"프로젝트 소유자이름"/"깃이름".git
- 터미널 명령어 방법 2 : 특정 Local Branch만 Remote Branch로 Push된다.
(쌍따옴표 부분을 원하는 것으로 변경!)
//Gitlab 기준
git push --set-upstream "git 주소"/"프로젝트 소유자이름"/"깃이름".git "브랜치명"
- 추가 : 태그 정보 Push
git push --tags origin
- 출처
[Error] the project you were looking for could not be found or you don’t have permission to view it
- 대상 : Gitlab
- 원인 : (본인의 경우에는) 상단에 있는 로컬 프로젝트를 Push 하면서 발생한 오류. Gitlab에 대한 계정 정보가 PC에 저장되지 않아서 발생함.
- 해결방법 : (Windows 10 기준)
- 제어판 → 사용자 계정 → Windows 자격 증명 관리
- “일반 자격 증명” 부분에 git 주소가 있는지 확인
(Gitlab기준 URL이 git:https://git주소 형식으로 되어 있다.) - 만일 없다면 “일반 자격 증명 추가” 부분을 눌러서 계정 정보를 추가한다. URL 앞에 "git:"을 추가해야된다.
- 출처
[Error] Operation not permitted
- 대상 : Gitlab
- 원인 : 복원 작업에 사용하는 백업 파일에 대한 권한이 없을 때 발생.
- 해결 방법 : 없음. 해당 백업 파일에 매칭되는 “gitlab.rb”, “gitlab-secrets.json” 파일이 없으면 복원 불가능.
(본인도 Gitlab 다시 설치했다.) - 예방 방법 : “gitlab.rb”, “gitlab-secrets.json” 이 두 파일을 별도로 백업해야한다.
- Gitlab의 경우 백업 작업시에 별다른 옵션을 주지 않는 경우 암호화된 tar 압축 파일을 생성한다. 해당 백업 파일에 정상적으로 접근하기 위해서는 복원 작업시 “gitlab.rb”, “gitlab-secrets.json” 파일이 반드시 필요하다. (이는 백업 명령 실행시 두 파일을 따로 백업하라고 경고 메시지를 띄워준다.)
[Error] git status error code 128
- 대상 : Git (SourceTree)
- 원인 : 프로젝트 파일들에 소유자가 다른 경우.
- 해결 방법 : Git 터미널에서 아래 명령어를 입력한다. (모든 폴더에 적용하기 위해서 * 을 사용함)
이 명령을 이용하면 모든 디렉토리를 안전 디렉토리로 설정할 수 있다.
git config --global --add safe.directory '*'
- 출처
Remote branch 강제 초기화
git push -f 기준브랜치 기준커밋주소:삭제시킬리모트브랜치
예) git push -f origin 991a602:삭제시킬리모트브랜치
991a602 커밋으로 리모트 브랜치가 이동함.
unable to access ssl no alternative certificate subject name matches target host name
- 모든 https repository 연결시 ssl 검증 끄기 : cmd 창에서 아래 명령어 입력 (Git 이 설치되어 있어야함)
git config --global http.sslVerify false
[Gitlab] Clone Https URL이 다르게 뜨는 현상
- 방법 1 : gitlab.rb 파일에서 external_url 부분 수정
- 방법 2 : gitlab.rb 파일에서 gitlab_rails['gitlab_host'] 부분 수정 ← 없을 수도 있음
- 방법 3
- Gitlab 접속 및 로그인 (관리자 계정)
- Admin Area → Settings → General → Visibility and access controls
- "Custom Git clone URL for HTTPS(S)" 부분 수정
- 참고 : https://forum.gitlab.com/t/unable-to-change-https-clone-url/75703/2
댓글
댓글 쓰기