협업툴,가상환경 정리/Git관련

깃랩 자주 쓰는 명령어 모음

알 수 없는 사용자 2022. 8. 4. 18:14

fatal: unable to access 'https://xxxxxxxxx.git/': Could not resolve host: source.xxxxxx.co.kr

에러시 :

git config --global --unset http.proxy

git config --global --unset https.proxy

이거로 안되면 

git config --global user.name "user name" 

git config --global user.email "user email"

해도 안되면 ----------------------------------------------

ping github.com

핑테스트 해보고 안되면

/etc/resolv.conf <-- vi 로 들어가서 밑에 Domain 추가 해서 하면됨

nameserver 168.126.63.1 #kt DNS 서비스
nameserver 8.8.8.8 #구글 퍼블릭 DNS서비스(IPv4)
nameserver 8.8.4.4 #구글 퍼블릭 DNS 서비스(IPv4)

 

 

깃 머지하기

develop 브랜치를 -> master 브랜치로 머지

git checkout master

git merge develop 

develop 브랜치내용이 master에 병합됨

 

--------------

원격 저장소의 깃 브랜치와 로컬 저장소의 브랜치 DATA 일치 시키기.

git fetch --prune origin 
git reset --hard origin/master 
git clean -d -f

 

--------------

깃 롤백하기

 2041  git log  --abbrev-commit
 2042  git reset a7329d3

로그보고 커밋 시리얼로 롤백함, 시리얼은 전부해도 되고 좀만 해도됨

여기서 git revert 로하는 방법과 git reset으로 하는 방법이 있다.

rever는 commit 을 살리고 롤백 , reset은 commit 을 전부 날린 후 롤백

 

--------------

깃랩에 브랜치 추가 ( 로컬부터 -> 원격까지 )

'test'라는 브랜치 추가

git clone http:~@!@!@#&$)!@  해서 받아준 다음

git branch test

git checkout test

git push origin test

하면 깃랩에도 'test'브랜치가 추가 되어 있씀

 

--------------

브랜치 삭제 방법은 

로컬 저장소원격 저장소 둘다 지워야 할 때

1. git branch -al 로 남아있는 브랜치 확인 후

2. git branch -d test 로 'test' 브랜치 라든가 필요 없는 브랜치를 삭제해서 로컬저장소에 있는 브랜치를 삭제하고 ( 사용하고 있는 브랜치는 삭제 불가능 ) 

3. git push origin --delete test 로 원격저장소에 있는 'test'라는 브랜치까지 삭제해주면 끝

 

--------------

깃 브랜치 원격저장소 확인 및 깃 브랜치 변경

git clone {HTTP주소}

git branch -a

git switch {브랜치이름}

스위치 될때마다 각 브랜치에 있는 프로젝트로 변경됨.

 

--------------

브랜치 명 변경 ( release 라는 브랜치를 -> liam_release 라는 브랜치로 바꾸고  -> 원래 있던 release 브랜치를 삭제(로컬/원격 모두)

git switch release 

git branch -m release liam_release

git push origin liam_release

git push origin --delete release

 

--------------

브랜치에서 다른 브랜치로 복사

브랜치A ---COPY---> 브랜치B ( develop 브랜치에 있는 모든 data를 liam_feature 브랜치로 복사 )

liam_feature 브랜치는 원격이고 로컬이고 아무것도 없는 상태(nothing.txt랑 깃이그노만있음)

초기상태 : 

git branch -D liam_feature     (liam_feature 브랜치 삭제 

git checkout -b liam_feature  (이때 현재 있는 깃브랜치에서 liam_feature 브랜치로 data 복사후, 브랜치 변경까지 됨)

ls 로 확인해보면 전부 복사 한걸 알 수있다. 그 다음엔 원격지에도 업데이트 

git add .

git commit -m 'ㅁㅁ'

git push -f origin liam_feature

 

--------------

git clone VS git remote

git clone foo {HTTP주소}

위에 꺼랑 밑에 꺼랑 동일하다고 보면됨

 2077  mkdir foo
 2078  cd foo/
 2079  git init
 2080  git remote add origin {HTTP주소}
 2081  git pull origin

 

--------------

git clone -b {브랜치이름} --single-branch {HTTP주소}

 

--------------

깃 추가한 후, 추가내용 푸시

 2232  git add .
 2233  git commit -m 'aa'
 2234  git push origin camera_test

 

--------------

깃 삭제 후, 삭제내용 푸시 (check.py)

 2237  git add -u
 2238  git commit -a -m 'aaa'
 2239  git push origin camera_test

 

--------------

깃 로컬에 있는 파일중 리모트에 없는파일 확인해서 없으면 삭제

git clean -f  ( 파일만 확인해서 삭제, directory X )

git clean -d -f ( 파일 및 directory 확인해서 리모트에 없는 폴더,파일 삭제 )

 

--------------

git pull 하는데 최신 업데이트가 안됬음에도 "Already up to date." ERROR 날때, 

다 삭제하고 git clone 하는 방법도 있지만 그 디렉토리에 연관해서 온갖 설정이 있을때 다 삭제하면 또해줘야해서 귀찮음.

그럴 떈

  831  git fetch --all

  832  git branch new-branch-to-save-current-commits
  833  git reset --hard origin/main

  834  git clean -d -f 

하면 리모트에 있는 git 상태 그대로 로커에 저장 함.

git reset --hard 의 경우 커밋 메시지가 삭제될 수 있으므로 사용에는 주의를 요한다.

 

--------------

아이디 비밀번호 반영구 저장 ( 해당 디렉토리만 )

 1859  git config credential.helper store
 1860  git pull

 

아이디 비밀번호 반영구 저장 ( 해당디렉토리 외의 다른 디렉토리에도 전부 적용 )

 1859  git config credential.helper store --global
 1860  git pull

 

아이디 비밀번호 특정 시간 동안만 저장

 1859  git config credential.helper 'cache --timeout=3600'
 1860  git pull