>  기사  >  개발 도구  >  Git&GitHub 버전 관리 소개

Git&GitHub 버전 관리 소개

coldplay.xixi
coldplay.xixi앞으로
2021-02-22 09:38:452719검색

Git&GitHub 버전 관리 소개

권장(무료): git tutorial

Article Directory

  • Version Control
    • 버전 관리 도구 기능
  • Git 소개
    • Git의 장점
    • Git 다운로드 및 설치
    • Git의 로컬 구조
    • Git 및 코드 호스팅 센터
    • 로컬 카드와 원격 라이브러리 간의 상호 작용

Git&GitHub 버전 관리 소개

버전 관리

개인 개발에는 지속적인 개선이 필요하며 반복에는 협업이 필요함 팀 내에서 이러한 요구 사항은 버전 제어 도구를 통해 충족됩니다. 이해해야 할 것은 버전 제어는 단지 아이디어일 뿐이며 버전 제어 도구는 이 아이디어의 구현이라는 것입니다. 版本控制只是一种思想,而版本控制工具是对这种思想的一种实现。

(1)集中式版本控制工具:CVS、SVN、VSS…
每一个开发人员是一个客户端,文件和版本信息存储在服务器上。缺点是容易出现单点故障:服务器一旦宕机,所有历史数据都会丢失。

(2)分布式版本控制工具:Git、Mercurial、Bazaar、Darcs…
在本地就可以进行版本控制。有效的避免了单点故障。

版本控制工具的功能

版本控制工具有下面几个功能:
(1)协同修改
多人并行不悖的修改服务器端的同一个文件。
(2)数据备份
不仅保存目录和文件的当前状态,还能保存每一个提交过的历史状态。
(3)版本管理
在保存每一个版本的文件信息时要做到不保存重复数据,以节约存储时间,提高运行效率。这方面SVN采用的是增量式管理的方式,而Git采取了文件系统快照的方式。
(4)权限控制
对团队中参与开发的人员进行权限控制;对团队外开发者贡献的代码进行审核(Git独有功能)。
(5)历史记录
查看修改人、修改时间、修改内容、日志信息;将本地文件恢复到某一个历史状态。
(6)分支管理
允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

Git简介

Linux在开发之初源代码来自世界各地,由Linus自己手动汇总并合并代码,这样的工作很繁杂。

2002年BitMover公司出于人道主义授权Linux社区免费试用版本控制系统BitKeeper,但不允许破解。

2005年,开发Samba的Andrew试图破解BitKeeper的协议,被BitMover公司发现后,要收回Linux社区的免费试用权;于是Linus自己用C语言开发了一个分布式版本控制系统—Git,一个月后Linux系统代码由Git管理。

2008年,GitHub上线,jQuery、Ruby、PHP开源软件都把自己的源代码放在GitHub进行托管,如今GitHub上好的项目已经数以万计。

Git的优势

大部分操作在本地完成,不需要联网。
完整性保证。(会对每一次提交的数据进行Hash操作)
尽可能添加数据而不是删除或修改数据。
分支操作非常快捷流畅。
与 Linux 命令全面兼容。

Git的下载与安装

可以去Git官网下载最新版本的git,仅在GitBash中使用就足够了。

下面几张图需要注意,其他直接安装默认值下载就可以了。
Git&GitHub 버전 관리 소개

Git&GitHub 버전 관리 소개

Git&GitHub 버전 관리 소개

Git的本地结构

Git在本地存在三个区:

  • 工作区(写代码的地方)
  • 暂存区(临时存储)
  • 本地库(存放历史版本)

在工作区新建一个文件后,可以使用git add将其添加到暂存区,再使用git commit添加到本地库。

Git和代码托管中心

GitHub就是Git的一个代码托管中心,其任务就是维护远程库

    (1) 중앙 집중식 버전 관리 도구
  • : CVS, SVN, VSS...
    각 개발자는 클라이언트이며 파일 및 버전 정보는 서버에 저장됩니다. 단점은 단일 실패 지점이 발생하기 쉽다는 것입니다. 즉, 서버가 다운되면 모든 기록 데이터가 손실됩니다.
  • (2) 분산 버전 관리 도구
: Git, Mercurial, Bazaar, Darcs...
버전 관리는 로컬에서 수행할 수 있습니다. 단일 실패 지점을 효과적으로 방지합니다.

버전 관리 도구의 기능

버전 관리 도구에는 다음과 같은 기능이 있습니다.
🎜(1) 공동 수정🎜
여러 사람이 서버 측에서 동일한 파일을 병렬로 수정할 수 있습니다.
🎜(2) 데이터 백업🎜
디렉터리 및 파일의 현재 상태를 저장할 뿐만 아니라 각 제출의 기록 상태도 저장합니다.
🎜(3) 버전 관리🎜
각 버전의 파일 정보를 저장할 때, 저장 시간을 절약하고 운영 효율성을 높이기 위해 중복된 데이터를 저장하지 않아야 합니다. 이런 점에서 SVN은 증분 관리 방식을 채택하고 있는 반면, Git은 파일 시스템 스냅샷 방식을 채택하고 있습니다.
🎜(4) 권한 제어🎜
팀 내 개발에 참여하는 사람들의 권한을 제어합니다. 팀 외부 개발자가 기여한 코드를 검토합니다(Git 고유 기능).
🎜(5)History🎜
수정자, 수정 시간, 수정 내용 및 로그 정보를 확인하고 로컬 파일을 특정 기록 상태로 복원하세요.
🎜(6) 지점 관리🎜
개발팀이 작업 프로세스 중에 여러 생산 라인의 작업을 동시에 진행할 수 있어 효율성이 더욱 향상됩니다. 🎜🎜🎜Git 소개🎜🎜🎜리눅스 개발 초기에는 소스코드가 전 세계에서 왔는데, 리누스가 직접 코드를 요약하고 병합하는 작업이 굉장히 복잡했습니다. 🎜🎜2002년 BitMover는 Linux 커뮤니티에 인도주의적인 이유로 버전 제어 시스템인 BitKeeper를 무료로 사용해 볼 수 있는 권한을 부여했지만 크래킹은 허용되지 않았습니다. 🎜🎜2005년에 Samba를 개발한 Andrew는 BitKeeper 프로토콜을 해독하려고 시도했습니다. BitMover에 의해 발견된 후 그들은 Linux 커뮤니티의 무료 평가판 권한을 되찾고 싶었고 Linus는 C로 분산 버전 제어 시스템인 Git을 개발했습니다. 한 달 후 Linux 시스템 코드는 Git에서 관리됩니다. 🎜🎜2008년에 GitHub는 온라인화되었습니다. jQuery, Ruby 및 PHP 오픈 소스 소프트웨어는 모두 호스팅을 위해 GitHub에 소스 코드를 올렸습니다. 🎜🎜🎜Git의 장점🎜🎜🎜대부분의 작업은 로컬에서 완료되며 인터넷 연결이 필요하지 않습니다.
무결성이 보장됩니다. (제출된 데이터 각각에 대해 해시 연산을 수행합니다.)
데이터를 삭제하거나 수정하는 대신 최대한 데이터를 추가하세요.
지점 운영이 매우 빠르고 원활합니다.
Linux 명령과 완벽하게 호환됩니다. 🎜🎜🎜Git 다운로드 및 설치🎜🎜🎜Git 공식 홈페이지에 가서 최신 버전의 Git을 다운로드하면 GitBash에서 사용하기에 충분합니다. 🎜🎜다음 사진에 주의하셔야 합니다. 그 외의 경우에는 기본값을 설치하고 다운로드하시면 됩니다.
여기에 이미지 설명 삽입🎜🎜여기에 이미지 설명 삽입🎜🎜여기에 이미지 설명 삽입🎜🎜🎜Git의 로컬 구조🎜🎜🎜Git에는 세 가지 로컬 구조가 있습니다. 영역: 🎜🎜 🎜 작업 공간(코드를 작성하는 곳)🎜🎜스테이징 영역(임시 저장소)🎜🎜로컬 라이브러리(기록 버전 저장)🎜🎜🎜작업 공간에서 새 파일을 만든 후 git add를 사용하여 추가할 수 있습니다. 스테이징 영역에 추가한 다음 <code>git commit을 사용하여 로컬 라이브러리에 추가합니다. 🎜🎜🎜Git 및 코드 호스팅 센터🎜🎜🎜GitHub는 Git용 코드 호스팅 센터로 원격 라이브러리 유지를 담당합니다. 🎜🎜🎜LAN 환경에서는 GitLab 서버를 코드 호스팅 센터로 구축할 수 있습니다. 🎜🎜외부 네트워크 환경에서는 GitHub, Code Cloud를 코드 호스팅 센터로 활용할 수 있습니다. 🎜🎜🎜🎜로컬 카드와 원격 도서관이 상호 작용하는 방식 🎜🎜🎜팀 내 협업: 🎜

Git&GitHub 버전 관리 소개
팀 간 협업:
Git&GitHub 버전 관리 소개

위 내용은 Git&GitHub 버전 관리 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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