2024-07-08
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Git은 아주 작은 프로젝트부터 아주 큰 프로젝트까지의 프로젝트 버전 관리를 효율적이고 빠른 속도로 처리할 수 있는 오픈소스 분산 버전 관리 시스템입니다.
Git은 분산되어 있습니다. Git에는 중앙 서버가 필요하지 않습니다. 우리는 모든 사람의 수정 사항을 쉽게 교환하기 위해 Git을 사용하고 중앙 서버를 보유하고 있지만 이 서버의 상태는 각 PC와 동일합니다. 우리는 이 서버를 개발자의 PC로 사용할 수 있으므로 컴퓨터를 끄지 않고도 모든 사람이 쉽게 서로 통신할 수 있습니다. 누구나 이 서버 없이도 작업할 수 있지만 "교환" 수정은 불편합니다.
중앙 집중식 버전 제어 도구
중앙 버전 관리 도구인 버전 라이브러리는 중앙 서버에 저장됩니다. 팀의 모든 구성원은 작업 시 중앙 서버에서 코드를 다운로드합니다. 작업하려면 LAN 또는 인터넷에 연결되어 있어야 합니다. 개인 수정 사항을 중앙 저장소에 제출합니다. 예: SVN, CVS
분산 버전 제어 도구
분산 버전 관리 시스템에는 "중앙 서버"가 없습니다. 모든 사람의 컴퓨터에는 완전한 버전 라이브러리가 있습니다. 이렇게 작업할 때 버전 라이브러리가 자신의 컴퓨터에 있기 때문에 인터넷에 연결할 필요가 없습니다. 여러 사람이 공동 작업할 때 수정 사항을 서로에게 푸시하기만 하면 서로의 수정 사항을 볼 수 있습니다. 예: 힘내
힘내 작업 흐름:
복제하다: 원격 저장소의 코드를 로컬 저장소로 복제합니다.
점검: 현지 창고에서 창고 지점을 확인하고 수정
추가하다: 코드 제출 전 대기장소에 코드 제출
저지르다: 로컬 창고에 제출하고 수정된 기록 버전을 로컬 창고에 저장합니다.
술책: 병합 작업 없이 원격 라이브러리에서 로컬 창고로 가져옵니다.
당기다: 원격 라이브러리에서 로컬 라이브러리로 끌어와 자동으로 병합(병합하다), 그런 다음 작업 공간에 넣습니다.fetch merge
푸시: 원격 창고에 코드를 푸시합니다.
git config
:구성 정보
# 设置用户信息
git config --global user.name "userName"
git config --global user.email "Email"
# 查看配置信息
git config --global user.name
git config --global user.email
alias
: 구성 명령 별명,~/.bashrc
설정을 추가하고 수정이 완료된 후 실행해야 합니다.source ~/.bashrc
# 部分windows系统不允许用户创建.开头的文件,可以在gitBash中执行
touch ~/.bashrc
# 在~/.bashrc中添加内容,输出git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
git init
: 실행이 성공적으로 완료되면 현재 디렉토리를 git Warehouse로 초기화합니다..git
폴더
git status
: 수정 상태 보기(임시 보관 장소, 작업 공간)
git add
: 작업 공간에 있는 하나 이상의 파일에 대한 수정 사항을 준비 영역에 추가합니다.
git add 单个文件名 | 通配符
# 将所有修改加入到暂存区
git add .
git commit
: 집결지의 내용물을 현지 창고 현 지점에 제출하고,git commit -m '注释内容'
git log
: 제출 로그 보기 및 별칭 구성git-log
git log [option]
--all 显式所有分支
--pretty=oneline 将提交信息显示为一行
--abbrev-commit 使得输出的commitId更简短
--graph 以图的形式显示
git reset
:버전 롤백
# 查看已经删除的记录,可以看到已经删除的提交记录
git reflog
# 版本切换,commitId可以通过git log查看
git reset --hard commitId
git branch
: 로컬 브랜치를 봅니다. 브랜치를 사용한다는 것은 메인 개발 라인에 영향을 주지 않도록 버그를 수정하고 새로운 기능을 개발하기 위한 작업을 메인 개발 라인에서 분리할 수 있다는 것을 의미합니다.
주인(생산) 브랜치 : 온라인 브랜치, 본점, 온라인에서 실행되는 애플리케이션으로 중소 프로젝트에 해당하는 브랜치
개발하다(개발하다) 브랜치: 마스터에서 생성된 브랜치입니다. 일반적으로 개발 부분의 주요 개발 브랜치로 사용됩니다. 온라인 개발의 여러 단계에 대한 다른 병렬 개발 요구 사항이 없으면 이 버전에서 개발을 수행할 수 있습니다. 단계 개발이 완료되면 마스터 브랜치에 병합하고 온라인으로 전환할 준비를 해야 합니다.
feature/xxx 브랜치: 개발에서 생성된 브랜치입니다. 일반적으로 동시에 개발되지만, 런칭이 동일한 기간이 아닐 때 생성됩니다. 브랜치의 연구 작업이 완료된 후 병합됩니다. 지점을 개발하십시오.
hotfix/xxx 브랜치: 마스터에서 파생된 브랜치로 일반적으로 온라인 버그 수정에 사용됩니다. 수리가 완료된 후 마스터에 병합하고 테스트하고 개발해야 합니다.
시험(시험) 나뭇가지
사전(사전 출시) 나뭇가지
# 查看本地分支
git branch
# 创建本地分支
git branch 分支名
# 切换分支
git checkout 分支名
# 切换到一个不存在的分支,创建并切换
git checkout -b 分支名
# 合并分支,一个分支上的提交可以合并到另一个分支
git merge 分支名
# 删除分支,不能删除当前分支,只能删除其它分支
# 删除时需要做各种检查
git branch -d 分支名
# 强制删除,不做任何检查
git branch -D 分支名
충돌 해결: 두 분기의 파일 수정 사항이 충돌할 수 있는 경우(예: 동일한 파일의 동일한 줄이 동시에 수정됨) 충돌을 수동으로 해결해야 합니다. 단계는 다음과 같습니다.
git remote add
: 원격 웨어하우스를 추가하는 작업은 먼저 로컬 라이브러리를 초기화한 후 생성된 원격 라이브러리에 연결하는 것입니다.
git remote add