> 개발 도구 > 자식 > 본문

Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

WBOY
풀어 주다: 2022-01-04 18:01:58
앞으로
3491명이 탐색했습니다.

이 기사에서는 Git과 Github에 대한 자세한 소개 튜토리얼을 제공합니다. Git은 현재 세계에서 가장 발전된 분산 버전 관리 시스템입니다. Github는 사용자에게 Git 서비스를 제공하는 웹사이트입니다.

Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

01.Git 개요

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

해결된 문제:
버전, 내용, 운영 사용자, 수정 시간, 문서 이름 등 각 수정 사항을 기록합니다.

2. Git과 Github의 차이점
Git은 간단히 말해서 특정 버전의 개정 상태를 확인하기 위해 하나 또는 여러 파일의 내용 변경 사항을 기록하는 소프트웨어입니다. .

Github은 Git 서비스를 사용자에게 제공하는 웹사이트입니다. 쉽게 말해 코드(및 기타 콘텐츠)를 넣을 수 있는 곳입니다. Git 관리를 위한 웹 인터페이스를 제공하는 것 외에도 Github는 구독, 팔로우, 토론 그룹 및 온라인 편집과 같은 풍부한 기능도 제공합니다.

Git에는 SVN과 같은 중앙 서버가 없습니다.

Git를 통해 코드를 공유하거나 다른 개발자와 공동 작업하려는 경우 현재 사용하는 Git 명령은 모두 로컬에서 실행됩니다. 그런 다음 다른 개발자가 연결할 수 있는 서버에 데이터를 저장해야 합니다. 이 예에서는 Github를 원격 창고로 사용합니다.

Git 설치

02. Git 로컬 창고 작업

1. 작업 흐름
Git 로컬 작업의 세 가지 영역:
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
작업 흐름:
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

Staging 영역: 저장과 동일합니다. 장바구니에 담긴 상품을 함께 최종 결제하는 방식입니다.

2. 현지 창고 운영
창고란?
웨어하우스는 버전 라이브러리(version library)라고도 하며, 간단히 말해서 코드를 저장하는 디렉터리로 이해하면 됩니다. 이 디렉터리에 있는 모든 파일은 각 파일의 수정, 삭제 및 기타 작업을 관리할 수 있습니다. Git으로 수행할 수 있습니다.

설치 후 처음 사용하기 전에 전역 구성을 수행해야 합니다.

1. "Git Bash Here"를 클릭하여 Git 명령줄 창을 엽니다.

$ git config --global user.name "用户名"
$ git config --global user.email "邮箱地址"
로그인 후 복사

프로젝트 생성 시 사용자 정보 설정 사용자 이름이 기록됩니다

2. 로컬 웨어하우스 생성
Git이 새 프로젝트/기존 프로젝트를 관리하도록 해야 할 경우 웨어하우스를 생성해야 합니다.

잘못된 조작으로 인해 불필요한 오류가 발생할 수 있으므로 Git 학습 시에는 빈 디렉토리를 사용하는 것을 권장합니다. 디렉터리 이름에는 영어 이름을 사용해 보세요.

3.

$ mkdir  目录名
로그인 후 복사

디렉토리를 새로운 방식으로 로컬에서 직접 생성할 수도 있습니다.
4. 명령줄에 pre_git 프로젝트 디렉터리를 입력하세요

$ cd 目录名
로그인 후 복사

5. Git 웨어하우스 초기화
즉, Git에게 이 디렉터리를 관리해야 한다고 알려주세요

$ git init
로그인 후 복사

실행 후 프로젝트 디렉터리를 열고 다음을 클릭하세요. 디렉토리 숨기기. 추가 .git 폴더를 찾을 수 있습니다. 임의로 삭제하거나 변경할 수 없습니다.

여기에 오면 발전할 수 있습니다.
6. Git 공통 명령 연산
현재 작업 상태 확인:

$ git status
로그인 후 복사

사용: 화장실에 갔다가 돌아오거나 회의를 마치고 돌아오는 등 프로젝트가 어디에 있는지 잊어버릴 때. 이 명령을 사용하여 다음에 수행할 작업을 결정할 수 있습니다.

7. 프로젝트 디렉토리에서 개발할 수 있습니다.

8. 작업 공간 파일을 캐시 영역에 추가합니다:

说明:git add 指令,可以添加一个文件,也可以同时添加多个文件。
语法一:$ git add 文件名
语法二:$ git add 文件名1 文件名2 文件名3 ......
语法三:$ git add .    【添加当前目录到缓存区中】
로그인 후 복사

9. 저장소에 제출

$ git commit -m "注释内容"
로그인 후 복사

. 시작하려면 위 단계를 반복하세요.

제출한 파일의 내용을 수정한 경우에는 추가부터 다시 제출하시면 됩니다.

여기의 제출 및 기타 작업은 Git 로컬 창고에만 제출됩니다.

Git 버전 롤백 작업

버전 롤백은 두 단계로 나누어집니다.
1 먼저 버전을 확인하고 되돌려야 할 시점을 결정합니다
명령:

$ git log
$ git log --pretty=oneline
로그인 후 복사

두 번째 명령: 간략한 정보 .
2. 롤백 작업:
명령:

$ git reset --hard 提交编号
로그인 후 복사
로그인 후 복사

작업을 실행한 후 프로젝트 디렉터리의 파일이 지정된 순간으로 돌아갑니다.

과거로 돌아갔다가 최근 상태로 돌아가고 싶으면 어떻게 해야 하나요?
첫 번째: 이전 번호 쿼리
명령:

$ git reflog
로그인 후 복사

그런 다음

$ git reset --hard 提交编号
로그인 후 복사
로그인 후 복사

실행 요약:
과거로 돌아가고 싶다면 먼저 커밋 ID를 얻은 다음 git Reset을 통해 과거로 돌아가세요 -- 딱딱한.

미래로 돌아가기: 과거 작업을 쿼리하고 최신 커밋 ID를 얻으려면 git reflog를 사용해야 합니다. (번호)

롤백 명령을 작성할 때 전체 커밋 ID를 작성할 필요가 없으며 git이 자동으로 인식한다는 것을 알 수 있습니다. 최소 처음 4자리 이상을 적어야 합니다.

03. 원격 창고

온라인 창고 운영을 예로 들어보겠습니다. (현재 Git 웨어하우스에 대한 원격 웨어하우스를 제공하는 웹사이트가 많이 있습니다)

1. Github 온라인 웨어하우스 생성

Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
2.使用线上仓库
添加远程仓库(这里添加github)

注意:在git bash中输入 cd /D 注意盘名字一定要是大写。如不输入这个语句 不给git bash定位的话,默认的本地文件位置是在c盘中。然后再cd到以远程仓库相同名字的文件夹中。

第一种方式:基于https协议:
仓库就是目录:
1.创建空目录,名称为shop(任取)
2.复制https对应得地址。
然后在当前目录新建shop目录

$ mkdir shop
$ cd ./shop
로그인 후 복사

3.使用clone指令克隆线上仓库到本地。

$ git clone 线上仓库地址
로그인 후 복사

执行后,线上的仓库就被clone下来了,如果clone下来的是一个空目录,克隆下来的目录只有隐藏的.git目录。

4.在上述操作完成后,就可以在本地仓库做对应的操作

比如:(提交至暂存区,提交到本地仓库,提交到线上仓库(远程仓库),拉取线上仓库
前面几个操作跟上面的本地仓库操作相同。

然后提交到线上仓库:

如果是首次提交,首先应获取权限:(否则会出现403的错误)
因为不是任何人都可以往线上仓库提交内容。
获取权限:
修改".git/config 文件内容:
在url这一项中:
在github.com前面加上:用户名:密码@
如:

url=https://用户名:密码@github.com/用户名/仓库名.git
로그인 후 복사

其它不变。

指令:
提交到线上仓库的指令

$ git push
로그인 후 복사

提交成功之后,你会发现,线上仓库中多你提交的内容。

注意:如果你提交成功下班后:同事也向该远程仓库提交了新的内容。第二天上班时,你需要拉去线上的仓库的最新版本
使用命令:

$ git pull
로그인 후 복사

因此在每天工作的第一件事就是git pull 拉取线上的最新版本,下班要做的就是 git push,将本地代码提交到线上仓库。

第二种方式:基于ssh协议(推荐使用)
该方式与前面https方式相比,只是影响github对于用户的身份鉴定方式,对于git的具体操作没有任何改变。

步骤:
1.生成客户端公私钥文件。
2.将公钥上传到Github。

实际操作:
1.创建公私钥文件

你的本地 Git 仓库和 GitHub 仓库之间的传输是通过SSH加密的,所以我们需要配置验证信息:使用以下命令生成 SSH Key:

在这里直接打开Git Bash:(也可以在桌面单击右键打开)

Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

然后输入命令:

ssh-keygen -t rsa -C "注册邮箱"
로그인 후 복사

如果你无法生成密钥(须先自行安装OpenSSH)然后在执行以上命令。
网上的一些教程使用命令:

$ ssh-keygen -t rsa-C "your_email@youremail.com"
로그인 후 복사

注意:其实your_email@youremail.com表示的就是注册邮箱,即两者是相同的。

之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。

2.找到id_rsa.pub文件。
成功的话会在 ~/ 下生成 .ssh 文件夹,进去,打开 id_rsa.pub,复制里面的 key。
回到 github 上,进入 Account => Settings(账户配置)。
为了验证是否成功,输入以下命令:

$ ssh -T git@github.com
로그인 후 복사

结果:Hi xxxx! You’ve successfully authenticated, but GitHub does not provide shell access.

3.然后再本地新建目录(用来保存线上的项目),然后进入目录。

$ mkdir 目录名称
$ cd ./目录名称/
로그인 후 복사

然后克隆目录到新建的目录中:

$ git clone ssh地址
로그인 후 복사

线上的仓库ssh和https地址可以在clone和download中查看
4.后续操作跟https方式一样。

相比于https,这种方式一旦配置好后,以后的项目就不需要一个个去配置用户名和密码了,可以说一劳永益。所以推荐使用这种方式

05.Git的分支操作

什么是分支 ?
即项目的分支(不同的功能):
所有的分支组成一个项目。
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
在版本回退的内容中,每次提交都会有记录,Git把他们串成时间线,形成类似于时间轴的东西,这个时间轴就是一个分支,我们称之为master分支。

在开发的时候往往是团队协作,多人进行开发,因此光有一个分支是无法满足多人同时开发的需求的,并且在分支上工作并不会影响其他分支的正常使用,会更加安全,Git鼓励开发者使用分支去完成一些开发任务。

分支的相关指令:

查看分支:git branch
创建分支:git branch 分支名
切换分支:git checkout 分支名
删除分支:git branch -d 分支名
合并分支:git merge 被合并的分支
로그인 후 복사

注意:可以使用"git checkout -b 分支名" 指令来切换分支,-b选项表示创建并切换,相当于是两个操作指令。

含"*"表示当前分支。

可以看出我们都是对分支进行操作。

删除分支之前,需要退出该分支,既不能在使用中删除。

06.冲突的产生与解决

案例:模拟冲突
1.我下班之后,同事对线上项目内容进行了修改,此时本地仓库的内容与线上仓库内容不一致,第二天我忘记做git pull操作,而是直接对本地文件进行修改。
当进行提交时,会报错。
2.解决冲突
先进行指令"git pull"操作。

3.打开冲突文件,解决冲突。
和提交内容的用户商量保存哪些内容。删除哪些内容。

然后重新提交后,在进行push操作即可。

这里可以看到上班前进行 git pull 的重要性。

07.Git实用功能

1.图形管理工具

Github for Desktop
对于经常使用Github的开发人员来说是非常便捷的工具。

Source tree
老牌的Git GUI管理工具,适合初学者。

TortoiseGit
对于熟悉SVN的开发人员来说,非常友善。其前辈TortoiseSVN。

自带的Git GUI管理工具。

08.忽略文件

项目中存在万年不变的目录,例如css,js,images等,或者还有些目录即便有改动,我们也不想让其提交到远程的文档,此时我们可以使用"忽略文件”机制来实现需求。

忽略文件需要新建一个名为 .gitignore的文件,该文件用于声明忽略文件或不忽略文件的规则,规则对当前目录及其子目录生效。

注意:该文件因为没有文件名,没办法在windows目录下直接创建,可以通过命令行Git Bash来创建。

常见的规则如下:
1.过滤整个文件夹      /mtk/
2.过滤所有.zip文件    *.zip
3.过滤某个具体文件    /mtk/do.c
4.不过滤具体某个文件  lindex.php
로그인 후 복사

新建.gitignore的文件
指令:

$ touch .gitignore
로그인 후 복사

配置文件.gitignore:
如:
1.忽略/js目录
/js/

09.Github的基本概念

作用:借助github托管项目代码。
1.仓库(Repository)
仓库即你的项目,你想在Github上开源一个项目,那就必须要新建一个Repository,如果开源的项目多了,你就拥有多个Repositories。

2.收藏(star)
意为收藏项目的人数。方便下次查看。

3.复制克隆项目(Fork)
浏览他人项目时,点击fork,会在自己的账号里新建一个相同的仓库,该仓库是独立存在的,但是会显示 forked from 谁的仓库。
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
4.发起请求(Pull Request)
这是基于Fork的,李四在自己克隆的项目里进行改进完成后,想要将自己改进的项目合并到原来的项目中,于是他就发送了一个Pull Request,给原项目的创建人。假如你是这个项目的创建人,你就可以收到这个请求,这时候你会仔细review他的代码,如果觉得不错,就可以接受他的请求,这时候他做的改进,在你的项目里就有了。
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
步骤:
1.fork项目
2.修改fork的项目
3.新建pull request
4.等待项目新建者合并项目
5.关注(Watch)
如果你关注了某个项目,那么以后只要这个项目有任何的更新,都会接收到通知。

6.事务卡片(Issue)
就是你开源了一个项目,别人再查看你的项目时发现了Bug,或则有些地方做的不好,他就可以给你提个Issue,即问题,然后你看到了这些问题就可以去完善,完善好了就可以将其一个个的Close掉。
即发现代码Bug,但是目前没有成型的代码,需要讨论时使用。
如:别人给Itcastphpgit2提交一个issue
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

主页概念:
1.Github主页
显示用户动态以及关注用户或关注仓库的动态。
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

2.仓库主页
项目信息
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

3.个人主页
个人信息

공식 홈페이지: Github.com

새 Github 계정 만들기:
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
참고: github 서버가 해외에 있어서 접속이 느리거나 접속이 불가능합니다.

이메일 주소를 확인하고 운영에 따라 원격 창고를 생성하세요.

원격 창고 작업:

1. 새 파일 만들기
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.
2. 파일을 편집합니다
Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.

파일 이름을 클릭한 다음 "작은 펜" 패턴을 클릭합니다.

3. 파일 업로드
파일을 업로드하고 설명을 추가하려면 클릭하세요. (파일 업로드)

4. 웨어하우스 파일 검색
검색하려면 클릭하세요. (파일 찾기)

5. 프로젝트 다운로드
웹 사이트를 구축하려면 복제 또는 다운로드

10.github 페이지를 클릭하세요

개인 사이트
방문:
https://username.github.io

Building steps
1. 개인 사이트 만들기 –> 새 창고 만들기(참고: 창고 이름은 [username.github.io]

2여야 합니다. . 웨어하우스 아래에 새 index.html 파일을 만드세요.

참고: github 페이지는 정적 웹 페이지만 지원합니다.
2. 웨어하우스는 .html 파일만 포함할 수 있습니다.

권장 학습: "Git Tutorial"

위 내용은 Git 및 Github에 대한 자세한 소개 튜토리얼을 구성하는 데 10분 정도 소요됩니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
git
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿