오늘은 Git 웨어하우스 관리에 대해 두 가지 측면에서 이야기해보겠습니다. 웨어하우스를 만들고 웨어하우스에 있는 파일의 변경 사항을 추적합니다.
Git 저장소 가져오기
git 저장소를 가져오는 방법에는 두 가지가 있습니다.
초기화되지 않은 로컬 디렉터리를 저장소 디렉터리로 사용
원격 호스트에서 기존 Git 프로젝트를 복제
아래 두 가지 방법을 보여드리겠습니다.
# mkdir learngit # cd learngit/ # git init Initialized empty Git repository in /root/learngit/.git
이런 식으로 현지 창고가 설립됩니다. 다음으로 원격으로 저장소를 복제하는 방법을 살펴보겠습니다.
# mkdir learngit2 # cd learngit2 # git clone git@github.com:*****/blog.git learngit2
이 명령은 원격에서 Git 저장소를 복제하고 디렉터리를 learngit2로 수정하는 것을 의미합니다. 기본적으로 이 매개변수가 없으면 디렉토리 이름은 blog입니다.
웨어 하우스의 모든 업데이트 추적
우선 파일 상태에 대해 이야기해야 합니다. 넓은 관점에서 파일 상태는
Untracked(추적되지 않음)입니다.
추적
추적 상태는 수정되지 않음, 수정됨, 임시로 구분됩니다. 추적되지 않은 파일은 저장소가 파일을 추적하지 않는다는 의미입니다.
이제 이러한 파일의 상태를 보여드리겠습니다.
먼저 프로젝트 디렉터리에 새 파일을 생성합니다
# touch README.md
그런 다음 파일 상태를 확인해 보겠습니다. git status는 파일의 상태를 나열할 수 있습니다. 추가된 파일이 없으면 모두 나열한다는 의미입니다.
# git status README.md # On branch master # # Initial commit # # Untracked files: # (use "git add <file>..." to include in what will be committed) # # README.md nothing added to commit but untracked files present (use "git add" to track)
README.md의 상태가 추적되지 않은 것을 볼 수 있습니다. 이제 다른 파일을 생성하여 Staging Area에 추가한 후 파일의 상태를 살펴보겠습니다.
# cat > index.php <<eof > <?php > phpinfo(); > eof # git add index.php # git status index.php # On branch master # # Initial commit # # Changes to be committed: # (use "git rm --cached <file>..." to unstage) # # new file: index.php #
변경 사항 아래에 파일이 표시되면 해당 파일이 임시로 저장되었다는 의미입니다. 그런 다음 index.php 파일을 다시 수정하고 무슨 일이 일어나는지 확인하세요.
# git status index.php # On branch master # # Initial commit # # Changes to be committed: # (use "git rm --cached <file>..." to unstage) # # new file: index.php # # Changes not staged for commit: # (use "git add <file>..." to update what will be committed) # (use "git checkout -- <file>..." to discard changes in working directory) # # modified: index.php #
index.php 파일이 스테이징 영역과 비스테이징 영역 모두에 나타나는 것을 보셨나요? 다들 주목하세요! 이런 상황이 자주 발생합니다.
git add
이 명령의 기능에는 새 파일 추적, 수정된 파일을 준비 영역에 제출, 병합 중에 충돌하는 파일을 해결된 것으로 표시하는 기능이 포함됩니다.
수정 사항 보기
작업 영역 및 준비 영역에서 파일 수정 사항을 보는 방법. git diff를 직접 사용하세요.
# git diff 1.txt diff --git a/1.txt b/1.txt index 3b18e51..a042389 100644 --- a/1.txt +++ b/1.txt @@ -1 +1 @@ -hello world +hello world!
그럼 집결지와 창고의 변경사항을 확인하는 방법입니다. 이때 --staged 옵션을 추가해야 합니다.
# git diff --staged 1.txt diff --git a/1.txt b/1.txt new file mode 100644 index 0000000..3b18e51 --- /dev/null +++ b/1.txt @@ -0,0 +1 @@ +hello world
요약하려면
작업 공간 및 준비 영역 파일의 수정 사항을 보려면 git diff [파일 이름]을 사용하세요.
준비 영역 및 웨어하우스 파일의 수정 사항을 보려면 git diff --staged를 사용하세요. [파일 이름]
업데이트 제출
git commit을 사용하여 업데이트를 제출하고 스테이징 영역의 콘텐츠를 창고에 제출합니다.
일반적으로 이번에 제출한 업데이트 정보를 함께 작성하려면 -m 옵션을 사용하는 것을 선호합니다. 다음과 같습니다:
# git commit -m 'first commit.add a txt file'
-m 옵션을 추가하지 않으면 편집기에서 업데이트된 정보를 제출할 수 있는 편집기가 팝업됩니다. 업데이트 내용이 많아 한두 문장으로 끝낼 수 없다면 이 방법을 추천드려요.
위 내용은 버전 관리 도구 Git - 창고 관리.md의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!