Git入门(保姆级教程)

439 阅读4分钟

一,git下载 下载地址: Git - Downloads (git-scm.com)

image.png 选择对应的版本进行下载,下载完成后安装,一直点击next即可。

二,git的使用 1,工作流程

Git本地操作的3个区域:

Git Repository(Git仓库)   :最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见

暂存区 : 暂存已修改的文件最后统一交到git仓库中

工作区 : 添加,编辑修改文件等操作

image.png

2,本地仓库操作 仓库又名版本库,英文名repository,我们可以简单理解为一个目录,用来存放代码,这个目录里的所有文件都可以被Git管理起来,每个文件的修改,删除等操作Git都能跟踪到。

1,在安装好首次使用需要进行全局配置,桌面空白处点击右键,点击“Git Bash Here”以打开Git命令行窗口

$ git config --global user.name "用户名"

$ git config --global user.emal "邮件地址"

用户名和邮件地址推荐使用github的用户名和邮件地址

image.png

2,创建仓库

创建仓库时的目录不一定要求是空目录,但初学建议使用空目录(不要使用包含中文的目录名)。

a.创建空目录

可以直接在桌面创建一个目录,也可以用命令$ mkdir 目录名

b.在命令行中进入项目目录

用命令$ cd 目录名

image.png

c.Git仓库初始化(让Git知道,它需要来管理这个目录)

用命令 $ git init

打开文件夹点击查看在勾选隐藏的项目,可以发现多了一个.git文件

image.png

image.png

.git目录不能删除也不能随意更改里面的内容

3,git常用指令操作

查看当前状态:git status

  因为我们还没有写代码进去所以查看的状态是

image.png 我们可以新建一个readme.txt文件

image.png

添加到缓存区:git add 文件名

     说明:git add 指令可以添加一个文件,也可以同时添加多个文件。

     语法1:git add 文件名

     语法2:git add 文件名1 文件名2 文件名3 ......

     语法3: git add.   [添加当前目录到缓存区中]

image.png

提交至版本库:git commit -m "注释内容"

image.png

这时readme.txt就保存到仓库中了,如果我们又新建了一个文件index.html又可以同样的操作一遍

image.png

image.png

index.html文件又被我们放进仓库了。后面我们修改了文件中的内容又要重新按照这个方法提交一遍,注释中写“修改了xxx文件”(重复使用git add 与git commit 指令即可)

三,回退到以前的版本

版本回退分为两步操作:

1,查看版本,确定需要回到的时刻点

           指令:git log

                     git log --pretty=oneline  (推荐使用)

git log结果:

image.png

git log --pretty=oneline结果:

image.png 黄色字符是版本号 白色字符是注释

2,回退操作

         指令:git reset --hard 版本号

比如我想回到创建第一个文件readme.txt的时候。

image.png

选中版本号点击鼠标右键点击copy,再输入命令$ git reset --hard再点击鼠标右键paste

image.png

回到了开始只有readme.txt的时候,注意:回到过去之后,想要再回到最新的版本的时候,需要用指令区查看历史操作,以得到最新的commit id

      命令:git reflog

image.png

注意事项:

        a.要想回到过去必须得到commit id 然后通过git reset --hard 进行回退

        b.要想回到未来必须使用git reflog 进行历史操作查看,得到最新的commit id;

        c.在写回退指令的时候commit id不用写全,git可以自动识别,但至少写前4位字符

3,gtihub远程仓库 1.新建远程仓库

         在github中点击+号新建一个仓库,填写信息

image.png

2.两种常规使用方式(ssh方式类似于http协议)

<1>基于http协议

      a.创建空目录,名字叫shop并进入

           

image.png

       b.使用clone指令线上仓库到本地

          语法:git clone 线上仓库地址

点击code可以查看线上仓库地址

image.png

image.png

克隆好了

 c.在仓库上做对应的操作(提交暂存区,提交本地仓库,提交线上仓库,拉取线上仓库)

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

    比如我修改readme文件后提交到远程仓库

image.png

在2021年8月13之前我们可以这样

用记事本打开.git文件中的config文件,将url改为:在http://后添加github的用户名:密码@后面接上github.com.....

image.png

再执行git push 但是2021年8月13号就不能用密码了,只能用个人生成码image.png

1,点击setting

image.png

2,点击左侧下方Develop Setting

image.png

3,点击personal

image.png

image.png

就生成了个人码

image.png 在git中输入

git remote set-url origin https://获得的个人通道码@github.com/nlp-greyfoss/typora_notes.git/

image.png

连上了,输入指令:git push

image.png

push成功

image.png

可以看见github远程仓库更新

点击add new file 可以创建文件

image.png 可以看见我新建了一个index.php文件,但此时我本地仓库还没有index.php文件

那么我要拉取线上仓库的index.php到本地仓库,用到的指令是git pull

image.png

可以看见已经从线上拉到了本地。

提醒:每天开始工作第一件事 git pull拉取线上最新版本,每天结束工作前要git push将本地代码提交到线上仓库

4,分支管理 每次提交都会有记录,git把他们串成时间线,类似于时间轴,这个时间轴就是一个分支,称之为master分支,团队开发光有一个是分支不够的,需要我们使用分支去完成一些开发任务

分支相关指令:

查看分支:git branch

创建分支:git branch 分支名

切换分支:git checkout 分支名

删除分支:git branch -d 分支名

合并分支: git merge 被合并的分支名

查看分支:

image.png

  • 表示当前分支

创建分支:

image.png

切换分支:

image.png

将dev分支内容与main分支合并:

image.png

注意点:删除分支时候,一定要退出要删除的分支,然后才能删除。