>  기사  >  개발 도구  >  Git을 시작하는 데 30분(요약)

Git을 시작하는 데 30분(요약)

WBOY
WBOY앞으로
2022-02-25 17:13:032878검색

이 기사는 환경 구성, 기본 이론, 프로젝트 구성, 파일 작업 및 기타 관련 문제를 포함하여 Git 시작에 대한 관련 지식을 제공합니다.

Git을 시작하는 데 30분(요약)

추천 학습: "Git 시작 튜토리얼"

Version Control

버전 관리(버전 반복, 새 버전! 버전 관리자)란 무엇입니까

버전 관리(Revision control)는 IT입니다. 개발 과정에서 파일, 디렉터리 또는 프로젝트의 수정 내역을 관리하고, 변경 내역 보기를 용이하게 하며, 이전 버전을 백업 및 복원하는 데 사용되는 소프트웨어 엔지니어링 기술입니다.

  • 지역 간 다중 사용자 공동 개발 달성
  • 하나 이상의 파일 기록 추적 및 기록
  • 소스 코드 및 문서 구성 및 보호
  • 통계적 작업량
  • 병렬 개발을 통해 개발 효율성 향상
  • 추적 기록 전체 소프트웨어 개발 프로세스
  • 개발자의 부담을 줄이고, 시간을 절약하고, 인지된 오류를 줄입니다.

쉽게 말하면, 여러 사람이 공동으로 개발하는 프로젝트를 관리하는 데 사용되는 기술입니다.

버전 관리나 버전 관리가 없고 올바른 프로세스 관리가 부족한 지방에서는 소프트웨어 코드의 일관성, 소프트웨어 콘텐츠의 중복성, 소프트웨어 프로세스의 트랜잭션 특성 및 동시성, 소프트웨어 소스 코드 보안 및 소프트웨어 통합과 같은 소프트웨어 개발 프로세스의 문제.

공통 버전 관리 도구

주류 버전 컨트롤러는 다음과 같습니다:

  • Git
  • SVN(Subversion)
  • CVS(Concurrent Visual System)
  • VSS(Micorosoft Visual SourceSafe)
  • TFS(Team Foundation) 서버)
  • Visual Studio Online

버전 관리 제품(Perforce, Rational ClearCase, RCS(GNU Revision Control System), Serena Dimention, SVK, BitKeeper, Monotone, Bazaar, Mercurial, SourceGear Vault)이 현재 가장 영향력이 크며 가장 널리 사용되는 것은 Git과 SVN입니다.

1. 로컬 버전 관리

파일의 모든 업데이트를 기록합니다. 각 버전의 스냅샷을 찍거나 RCS와 같은 개인용으로 적합한 패치 파일을 기록할 수 있습니다.

2. 중앙 집중식 버전 관리 SVN

모든 버전 데이터는 서버에 저장되며, 공동 개발자는 서버에서 자신의 수정 사항을 동기적으로 업데이트하거나 업로드할 수 있습니다.

모든 버전 데이터는 서버에 저장됩니다. 사용자의 로컬에는 이전에 동기화한 버전만 있습니다. 인터넷에 연결되어 있지 않으면 사용자는 이전 버전을 볼 수 없으며 버전 확인 문제나 작업을 전환할 수도 없습니다. 다른 지점에서. 게다가 모든 데이터는 단일 서버에 저장되므로 이 서버가 손상되어 모든 데이터가 손실될 위험이 높습니다. 물론 정기적으로 백업할 수 있습니다. 대표제품 : SVN, CVS, Vss.

3. 분산 버전 관리 GIT

각 브랜치에는 모든 코드가 있습니다.

모든 버전 정보 창고는 각 로컬 사용자에게 동기화되므로 모든 버전 기록을 로컬에서 확인하고 오프라인으로 로컬로 제출할 수 있습니다. 인터넷에 연결되면 해당 서버나 다른 사용자에게 푸시하기만 하면 됩니다. 모든 버전 데이터는 각 사용자가 저장하기 때문에 한 사용자의 기기에 문제가 없다면 모든 데이터를 복원할 수 있지만 이로 인해 로컬 저장공간 점유량이 늘어나게 된다.

서버 손상이나 네트워크 문제로 인해 작업이 불가능한 경우는 없습니다.

4. Git과 SVN

SVN의 주요 차이점은 버전 라이브러리가 중앙 서버에 집중되어 있기 때문에 먼저 중앙에서 시작해야 합니다. 서버는 최신 버전을 받은 후 작업을 완료한 후 어젯밤의 작업을 중앙 서버로 푸시해야 합니다. 중앙 집중식 버전 제어 시스템이 작동하려면 인터넷에 연결되어 있어야 하며 높은 네트워크 대역폭이 필요합니다.

GIT는 중앙 서버가 없는 분산 버전 관리 시스템입니다. 각 컴퓨터는 완전한 버전 라이브러리입니다. 버전이 모두 컴퓨터에 있기 때문에 작업 시 인터넷에 연결할 필요가 없습니다. 공동 작업 방법은 다음과 같습니다. 예를 들어, 귀하가 귀하의 컴퓨터에서 파일 A를 변경하고 다른 사람이 귀하의 컴퓨터에서 파일 A도 변경한 경우 두 사람은 수정 사항을 서로에게 푸시하기만 하면 서로의 내용을 볼 수 있습니다. 수정되었습니다. Git은 어떤 코드와 파일이 업데이트되었는지 직접 확인할 수 있습니다.

Git은 현재 세계에서 가장 발전된 분산 버전 관리 시스템입니다.

Git 환경 구성

Git 공식 홈페이지 https://git-scm.com을 열고 운영체제에 맞는 Git 버전을 다운로드 받으세요.

모든 것이 다운로드 속도가 느린 경우 미러를 찾을 수 있습니다!

공식 웹사이트 다운로드가 너무 느리므로 Taobao 미러 다운로드를 사용할 수 있습니다. http://npm.taobao.org/mirrors/git-for-windows/

Git 시작

Git Bash: Unix 및 Linux 스타일 명령줄, 가장 많이 사용되고 권장됨

Git CMD: Windows 스타일 명령줄

Git GUI: 그래픽 인터페이스가 있는 Git, 초보자에게는 권장되지 않음, 일반적인 명령에 익숙해지세요

기본 Linux 명령 학습

cd: 디렉토리 변경

cd.. 이전 디렉토리로 돌아가서 기본 디렉토리로 직접 cd

pwd: 현재 디렉토리 경로 표시

ls(ll): 현재 디렉토리의 모든 파일이 나열되지만 나중에 나열하겠습니다. 내용은 자세히

touch: touch index.js와 같은 새 파일을 생성하면 현재 디렉터리에 새 index.js 파일이 생성됩니다.

rm: 파일 삭제

mkdir: 새 디렉터리를 생성합니다. 새 폴더를 만듭니다.

rm-r: 폴더 삭제, rm-r src는 src 디렉터리 삭제

mv 파일 이동

reset은 터미널 다시 초기화, 화면 지우기

clear 화면 지우기

history 명령 기록 보기

help help

exit Exit

#은 댓글을 의미합니다.

Git 구성

모든 구성 파일은 실제로 로컬에 저장됩니다.

사용자 이름 및 이메일 설정:

git config --global user.name "name"

git config -- 전역 사용자 이메일 22222@qq.com

git config --system --list는 시스템에 의해 구성된 구성을 쿼리합니다

git config --global --list는 전역 구성을 쿼리합니다

Git의 기본 이론

Git에는 세 가지 로컬 작업 영역: 작업 디렉터리(Working Directory), 준비 영역(Stage, Index), 리소스 라이브러리(Repository 또는 Git 디렉터리). 원격 git Warehouse(Remote Directory)를 추가하면 4개의 작업 영역으로 나눌 수 있습니다. 이 네 영역 간의 파일 변환 관계는 다음과 같습니다.

  • 작업 공간: 일반적으로 프로젝트 코드를 저장하는 작업 공간
  • 인덱스/스테이지: 준비 영역: 변경 사항을 임시로 저장하는 데 사용됩니다. 실제로는 파일 목록에 제출할 정보를 저장하는 파일일 뿐입니다.
  • 저장소: 창고 영역(또는 로컬 창고)은 모든 버전에 제출한 데이터가 안전하게 저장되는 곳입니다. HEAD는 창고에 있는 최신 버전을 가리킵니다.
  • 원격: 코드를 호스팅하는 서버인 원격 창고는 원격 데이터 교환을 위한 프로젝트 팀의 컴퓨터로 간단히 생각할 수 있습니다.

정확하게 말하면 세 가지 로컬 영역은 git Warehouse에서 HEAD가 가리키는 버전이어야 합니다.

  • 디렉토리: Git이 관리하는 디렉토리, 즉 작업 공간과 Git 관리를 포함한 웨어하우스입니다. 공간.
  • WorkSpace: Git을 통한 버전 관리가 필요한 디렉터리 및 파일입니다.
  • .git: Git 관리 정보가 저장되는 디렉터리입니다.
  • Index/Stage: 준비 영역 또는 제출할 업데이트 영역을 리포지토리에 제출하기 전에 모든 업데이트를 준비 영역에 넣을 수 있습니다.
  • Local Repo: 로컬 저장소, HEAD는 현재 개발 지점만 됩니다.
  • Stash: 숨겨져 있으며 WorkSpace에서 임시 상태를 저장/복원하는 데 사용되는 작업 상태 저장 스택입니다.

Workflow

git의 작업 흐름은 일반적으로 다음과 같습니다.

1. 작업 디렉터리에 파일을 추가하고 수정합니다.

2. 버전 관리가 필요한 파일을 준비 영역에 넣습니다. 준비 영역의 파일을 Git 저장소에 제출합니다.

따라서 git에서 관리하는 파일에는 수정, 준비, 커밋의 세 가지 상태가 있습니다.

Git 프로젝트 구성

작업 디렉터리 만들기 및 일반 지침

작업 디렉터리(WorkSpace)는 일반적으로 Git에서 관리하는 데 도움이 되는 폴더입니다. 프로젝트 디렉터리일 수도 있고 빈 디렉터리일 수도 있습니다. 중국어를 사용하지 않는 것이 좋습니다.

일상 사용을 위해 아래 그림의 6가지 명령만 기억하세요.

로컬 창고 건설:

로컬 창고를 만드는 방법에는 두 가지가 있습니다. 하나는 새로운 창고를 만드는 것이고, 다른 하나는 원격 창고를 복제하는 것입니다.

1. 새 웨어하우스를 생성하려면 GIT가 관리하는 프로젝트의 루트 디렉터리를 사용하여 실행해야 합니다.

#在当前目录新建一个Git代码库
$ git init初始化

2. 실행 후 프로젝트 디렉터리에 추가 .git 디렉터리만 있는 것을 볼 수 있습니다. 버전 등에 관한 모든 정보는 이 디렉토리 안에 있습니다.

원격 저장소 복제

1. 또 다른 방법은 원격 디렉토리를 복제하는 것입니다. 왜냐하면 원격 서버의 바지를 로컬 디렉토리에 완전히 미러링하기 때문입니다!

#可镂一个项目和它的整个代码历史(版本信息)
$ git clone [url]

2. gitee 또는 github로 이동하여 테스트

Git 파일 작업

파일의 4가지 상태

버전 관리는 파일을 수정하고 제출하려면 먼저 무엇을 알아야 합니다. 파일의 현재 상태는 무엇입니까? 그렇지 않으면 아직 제출하고 싶지 않은 파일을 제출했거나 제출하려는 파일이 제출되지 않았을 수 있습니다.

  • 추적되지 않음: 이 파일은 폴더에 있지만 git 라이브러리에 추가되지 않고 버전 제어에 참여하지 않으며 git add를 통해 Staged로 변경됩니다.
  • 수정 취소: 파일이 데이터베이스에 저장되었으며 수정되지 않았습니다. 즉, 저장소의 파일 스냅샷 내용이 폴더의 내용과 정확히 동일합니다. , 수정된 상태가 됩니다. git rm을 사용하여 저장소를 제거하면 추적되지 않는 파일이 됩니다
  • 수정됨: 파일이 수정되었으며, 방금 수정되었으며, 다른 작업이 수행되지 않았습니다. 이 파일도 두 곳에서 준비 상태로 들어갈 수 있습니다. git add를 사용하면 수정 사항이 취소되고 수정 취소 상태로 돌아갑니다. 이 git 체크아웃은 라이브러리에서 파일을 꺼내고 현재 수정 사항을 덮어씁니다.
  • Staged: 임시 상태입니다. git commit을 실행하여 수정 사항을 라이브러리에 동기화합니다. 이때 라이브러리의 파일과 로컬 파일은 다시 일관성을 갖게 되며 파일은 Unmodify 상태가 됩니다. git Reset HEAD filename을 실행하여 임시 저장소를 취소하면 파일 상태가 Modified로 변경됩니다.

파일 상태 확인

파일에는 4가지 상태가 있다고 합니다. 다음 명령을 통해 파일 상태를 확인할 수 있습니다.

#查看执行文件状态
git status [filename]
#查看所有文件状态
git status
#添加所有文件到暂存区
git add .
#提交暂存区中的内容到本地仓库 -m提交信息
git commit -m "注释内容"

파일 무시

때로는 특정 파일을 넣고 싶지 않을 때가 있습니다. 예를 들어 데이터베이스 파일, 임시 파일, 디자인 파일 등을 버전 관리에 추가합니다.

홈 디렉터리에 ".gitignore" 파일을 만듭니다. 이 파일에는 다음과 같은 규칙이 있습니다.

  1. 파일에서 빈 줄을 무시하거나 파운드 기호(#)로 시작하는 줄은 무시됩니다.
  2. Linux 와일드카드를 사용할 수 있습니다. 예를 들어 별표(*)는 임의 개수의 문자를 나타내고, 안녕하세요(?)는 한 문자를 나타내고, 대괄호([abc])는 선택적 문자 범위를 나타내고, 중괄호({string1, string2})는 선택적 문자열을 나타냅니다.
  3. 이름 앞에 느낌표(!)가 있으면 예외 규칙을 나타내며 무시되지 않습니다.
  4. 이름 앞에 경로 구분 기호(/)가 있으면 무시할 파일이 이 디렉터리에 있고 하위 디렉터리에 있는 파일은 무시되지 않는다는 의미입니다.
  5. 이름의 마지막 끝이 경로 구분 기호(/)인 경우 파일이 아닌 이 디렉터리에 있는 이름의 하위 디렉터리가 무시된다는 의미입니다(기본 파일과 후속 디렉터리는 무시됩니다).
#为注释
*.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中
!lib.txt    #但lib.txt除外
/temp        #进忽略项目根目录下的TODO文件,不包括其他目录temp
build/       #忽略build/目录下的所有文件
doc/*.txt    #忽略doc/notes.txt 但不包括 doc/server/arch.txt

.gitignore 파일 내용

#java
*.class
*.log
*.lock

#Package Files #
*.jar
*.war
*.ear
target/

# idea
.idea/
*.iml

*velocity.log*

### STS ###
.apt_generated
.factorypath
.springBeans

### IntelliJ IDEA ###
*.iml
*.ipr
*.iws
.idea
.classpath
.project
.settings/
bin/

*.log
tmp/

#rebel
*rebel.xml*

코드 클라우드를 사용하여

  1. 코드 클라우드에 등록 및 로그인하여 개인 정보를 개선하세요
  2. 로컬 바오딩 SSH 공개 키를 설정하여 비밀번호 없는 로그인을 달성하세요!
# 进入 C:\Userss\Administrator\.ssh 目录
# 生成公钥
ssh-keygen -t rsa

3. 코드클라우드 계정에 공개키 정보 공개키를 추가해주세요!

4. Code Cloud를 사용하여 나만의 웨어하우스 만들기

IDEA에 Git 통합

1. 새 프로젝트를 만들고 git을 바인딩합니다.

원격 git 파일 디렉터리를 프로젝트에 복사하거나 동일한 내용으로 git 디렉터리에 만듭니다. name (git 파일은 원격으로 복제된 git 파일입니다)

새로고침하면 아이디어가 나타납니다

2. 파일을 수정하고 IDEA를 사용하여 git을 작동시킵니다

  • Staging Area에 git add를 추가합니다. Commit Commit Git Commit은 원격 창고 git 푸시에 push
  • git branch

#列出所有本地分支
git branch
#列出所有远程分支
git branch -r
#新建一个分支,但仍然停留在当前分支
git branch [branch-name]
#新建一个分支,并切换到该分支
git checkout -b [branch]
#合并指定分支到当前分支
git merge [branch]
#删除分支
git branch -d [branch-name]
#删除远程分支
git push origin --delete [branch-name]
git branch -dr [remote/branch]
rrreee reeeea rrreee reeee reeee rerreee recomended 학습 : "Git Tutorial

".

위 내용은 Git을 시작하는 데 30분(요약)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제