CLI git init
1. check && setup
git remote -v
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
git remote add origin git@github.com:My-Repo/vmv.kr.git
#git remote set-url origin
git push --set-upstream origin master
git push -u origin main
1.1 add ssh public key to git
ssh-keygen -t rsa -b 4096
[root@cerbock-236149 lalap]# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDHupgmsI2PSYWGiyd4GQRGyTbmIQWWTdC1WkRv8O+9+s1ipU1C+Jll9f8O6NbPVM8ca73omJIX+GAPfk.........ock-236149.novalocal
Add this text to Git
https://github.com/settings/keys
2. cd to project
cd /path/to/your/project
git init
3. add file & set commit
git add file.txt
git commit -m "Add file.txt"
git remote add origin
4. push
git push -u origin master
5. config
끝줄경고 생략
git config core.autocrlf false
머지(merge) 방식을 사용하려면:
git config pull.rebase false
리베이스(rebase) 방식을 사용하려면:
git config pull.rebase true
패스트-포워드(fast-forward)만 허용하려면:
git config pull.ff only
위 명령 중 하나를 실행하여 기본 설정을 변경할 수 있습니다. 또한 명령줄에서 --rebase, --no-rebase, 또는 --ff-only를 사용하여 구성된 기본 설정을 재정의할 수도 있습니다.
timeslide라는 브랜치를 푸시하고 서버에서 해당 커밋을 풀하려면 다음 단계를 따르세요:
timeslide 브랜치를 로컬에서 생성하고 전환합니다:
git checkout -b timeslide
필요한 작업을 수행하고 커밋합니다:
git add <변경된 파일>
git commit -m "Add changes for timeslide"
timeslide 브랜치를 원격 저장소에 푸시합니다:
git push origin timeslide
서버에서 해당 커밋을 풀하기 전에 변경 사항을 미리 확인할 수 있습니다. 다음 명령을 실행하여 timeslide 브랜치의 커밋 내용을 확인합니다:
git log origin/timeslide..timeslide
이 명령은 timeslide 브랜치에 로컬 브랜치에서 없는 커밋을 보여줍니다.
서버에서 timeslide 브랜치의 변경 사항을 풀합니다. 다음 명령을 실행하세요:
git pull origin timeslide
이 명령은 원격 저장소의 timeslide 브랜치에서 변경 사항을 가져와서 현재 브랜치와 통합합니다.
서버에서 timeslide 브랜치의 변경 사항을 풀하면서 다른 내용을 확인하려면, git diff 명령을 사용하여 풀하기 전과 후의 변경 사항을 비교할 수 있습니다. 예를 들어, 다음 명령을 실행하여 변경 사항을 확인할 수 있습니다:
git diff origin/timeslide..timeslide
이 명령은 timeslide 브랜치의 풀 이전과 풀 이후의 변경 사항을 비교하여 출력합니다. 변경된 파일 및 해당 내용을 확인할 수 있습니다.
git checkout master 명령을 실행했을 때 "Your local changes to the following files would be overwritten by checkout"라는 오류 메시지가 나타나는 경우, 이는 현재 작업 중인 파일에 수정 사항이 있어서 master 브랜치로 전환할 때 충돌이 발생한다는 의미입니다. 이 오류를 해결하려면 다음 중 하나의 방법을 시도할 수 있습니다:
변경 사항을 커밋하기: 변경된 파일을 커밋하여 현재 브랜치에 변경 사항을 반영한 후에 master 브랜치로 전환할 수 있습니다. 변경된 파일을 커밋하는 방법은 다음과 같습니다:
git add .
git commit -m "Save changes before switching to master branch"
위 명령을 실행하여 변경 사항을 커밋한 후에 git checkout master를 다시 시도하면 정상적으로 master 브랜치로 전환될 수 있습니다.
변경 사항을 임시로 보관하기: 변경된 파일을 일시적으로 보관하고, master 브랜치로 전환한 후에 다시 복원할 수 있습니다. 변경 사항을 일시적으로 보관하는 방법은 다음과 같습니다:
git stash
위 명령을 실행하면 변경된 파일의 상태가 일시적으로 스태시(stash)에 저장됩니다. 그런 다음 git checkout master를 실행하여 master 브랜치로 전환합니다. 전환 후에 변경 사항을 원하는 시점에 다시 복원하려면 다음 명령을 실행하세요:
git stash apply
위 명령을 실행하면 스태시에 저장된 변경 사항이 현재 작업 영역으로 복원됩니다.
이러한 방법 중 하나를 사용하여 변경 사항을 처리한 후에 git checkout master를 실행하면 오류 없이 master 브랜치로 전환할 수 있습니다.
현재 변경 사항을 모두 무시하고 git status 명령을 실행했을 때 아무 내용도 표시되지 않도록 하려면 다음 단계를 따르세요:
변경된 모든 파일을 되돌립니다. 변경된 파일을 원래 상태로 되돌리는 방법은 두 가지가 있습니다. 먼저 변경 내용을 커밋하지 않은 경우에는 다음 명령을 실행하여 변경된 파일을 되돌릴 수 있습니다:
git checkout .
위 명령을 실행하면 모든 변경된 파일이 이전 상태로 복원됩니다. 주의해야 할 점은 이 명령은 변경된 파일을 완전히 삭제하므로, 되돌리기 전에 변경 내용을 백업해 두어야 합니다.
만약 변경 내용을 이미 커밋했거나 스태시에 보관한 경우, 다음 명령을 실행하여 스태시를 제거하고 작업 영역을 이전 상태로 복원합니다:
git stash clear
위 명령은 스태시를 완전히 제거하므로, 스태시에 보관된 변경 사항을 영구적으로 삭제하려는 경우에만 사용하세요.
변경 내용을 원격 저장소로 강제로 푸시합니다. 만약 변경 내용이 이미 원격 저장소에 푸시되었을 경우, 이 단계를 건너뛰어도 됩니다. 변경 내용을 원격 저장소로 강제로 푸시하여 로컬 변경 사항을 원격 저장소와 동기화합니다:
git push -f origin
은 현재 작업 중인 브랜치의 이름입니다. 위 명령을 실행하면 로컬 변경 내용이 원격 저장소에 강제로 푸시되어 이전 상태로 되돌아갑니다.
위 단계를 따르면 현재 변경 사항을 모두 무시하고 git status 명령을 실행했을 때 아무 내용도 표시되지 않도록 할 수 있습니다. 주의해야 할 점은 변경된 파일이나 커밋된 내용이 완전히 삭제되기 때문에, 변경 사항을 백업하거나 복원할 필요가 없는지 확인해야 합니다.
2 Comments
Jordan Singer
2d2 replies
Santiago Roberts
4d