git学习笔记

目录

一、git简介

二、git安装

三、git基本命令

四、git分支

五、git远程仓库

六、学习小结


一、git简介

  • git是一个版本控制工具,简单来说就是创建了仓库存储和管理代码。(就像个文件夹)
  • 利用git可以对代码进行增删改查,最重要的是利于团队作开发。(你写好登录页的代码上传仓库,你同事写好订单页的代码上传仓库,俩人并不冲突,主要一句命令就可以更新得到对方写的代码,不需要拿U盘拷哦)
  • 仓库分为本地仓库和远程仓库,本地仓库就是自己电脑,远程仓库就是远程服务器,像github和gitee网站就可以为我们提供远程仓库。对于储存在远程仓库的代码,团队里的任何人都可以任何时间、地点下载到本地,非常方便。
  • git主要学习各种命令。

二、git安装

  1. 进入git官网(Git),点击下载
    注:太慢的话可以用淘宝镜像下载(CNPM Binaries Mirror)
  2. 点击Next安装(可以自行修改安装路径)git学习笔记_第1张图片
  3. 这三个选项按需勾选,点击Nextgit学习笔记_第2张图片
  4. 在开始菜单创建名为Git的目录,点击Nextgit学习笔记_第3张图片
  5. 选择默认编辑器,点击Nextgit学习笔记_第4张图片
  6. 选择git初始化默认分支的名字,默认为master,想要修改就在输入框填写想改的名字,点击Nextgit学习笔记_第5张图片
  7. 从命令行或者第三方软件使用git,点击Nextgit学习笔记_第6张图片
  8. 使用OpenSSL库来进行HTTPS连接,点击Next
    git学习笔记_第7张图片git学习笔记_第8张图片
  9. 一直点Next即可,最后点Install安装git学习笔记_第9张图片
  10. 安装完成,点击Finish
  11. git学习笔记_第10张图片
  12. 现在开始菜单就多了一个Git文件夹,里面有五个图标git学习笔记_第11张图片

三、git基本命令

注:从开始菜单打开Git文件夹,点击里面的Git Bash或者Git CMD都可以写命令,除了长得稍微有点不一样,命令都是一样的。(我个人习惯用Git CMD)

1.基础配置

git config --global user.name "你的用户名" //设置用户名 
git config --global user.email "你的邮箱" //设置邮箱
git config -l //查看所有配置

git学习笔记_第12张图片

 2.使用SSH公钥

ssh-keygen -t rsa -C "你的邮箱"    //三次回车,生成公钥 

git学习笔记_第13张图片

git学习笔记_第14张图片

ssh -T [email protected]    //确认并添加主机到本机SSH可信列表

git学习笔记_第15张图片

 3.创建git版本库

进入需要进行管理的项目目录,执行git init创建本地git版本库。

git init

以管理C:\Users\蛋蛋\Desktop\project-SPH目录下的app项目为例。 

git学习笔记_第16张图片

 此时C:\Users\蛋蛋\Desktop\project-SPH目录下就多了一个.git文件夹,创建本地仓库成功,该目录下的所有文件和文件夹都接受git的管理。 

git学习笔记_第17张图片

 4.将文件提交到仓库

分两步,第一步将文件添加到暂存区,第二步将暂存区文件提交到仓库。

(1)通过git add命令将文件提交到暂存区

git add *   //将所有文件添加到缓存区
git add 文件路径    //将指定文件添加到缓存区

 (2)通过git commit命令将暂存区文件提交到仓库

git commit    //将暂存区所有文件提交到仓库
git commit -m '提交说明'    //带说明的提交

git学习笔记_第18张图片

5.查看仓库状态

文件新建、修改、添加到暂存区等状态都可以通过git status查询到。

git status    //使用频率很高的命令,任何时候都可以用

git学习笔记_第19张图片 6.查看仓库中文件具体的修改

git diff    //查看仓库中所有文件的改动情况
git diff 文件路径    //查看指定文件的改动情况

git学习笔记_第20张图片  

7.查看历史提交记录

git log    //显示所有提交的历史记录

git学习笔记_第21张图片

8.版本回退

如果对最新版本的代码不满意,想回到以前提交的某个版本,就可以使用命令回退。(再也不用苦苦撤销了,真的牛)

git reset --hard HEAD^    //回退到上一个版本
git reset --hard HEAD^^    //回退到上上个版本
git reset --hard "版本id"    //回退到指定版本

git学习笔记_第22张图片  

9.回到未来的版本

如果现在又觉得还是最新的版本好,又想回到最新的版本,也是可以实现的。(有点欠揍,但git满足你的无理要求)

git reflog    //查看未来版本
git reset --hard "版本id"    //回到未来指定版本

git学习笔记_第23张图片  

10.撤销修改

(1)撤销工作区的修改(未被git add到暂存区的修改)

git checkout -- .    //撤销工作区所有文件的修改
git checkout -- 文件路径    //撤销工作区指定文件的修改

(2)撤销缓存区的修改

git reset HEAD 文件路径  

 git学习笔记_第24张图片

11.删除文件

(1)删除工作区文件(未被git add到暂存区的文件),鼠标右击,选择删除

(2)删除仓库中文件(仓库和本地的文件都被删除,要恢复的话要用版本回退)

git rm 文件路径

四、git分支

分支相当于一个副本,在我们需要增加某些新功能又怕打乱之前的代码,就可以从仓库拉取一个分支,在分支进行开发,最后分支代码没问题再把代码合并到主分支上。(默认就有一个名为master主分支,之前我们的操作都是在主分支master上进行的。团队合作都是在分支上开发,确定大版本的时候才会合并到主分支master)

1. 查看分支

git branch    //查看本地分支信息
git branch -v    //查看本地分支详细信息
git branch -av    //查看包括远程仓库在内的分支详细信息  

git学习笔记_第25张图片

2. 创建分支 

git branch 分支名字    //创建一个分支

git学习笔记_第26张图片

3. 切换分支

新建了分支之后,我们就可以切换到分支进行开发,而主分支master的代码不受到影响

git checkout 分支名字    //切换分支
git checkout -b 分支名字    //创建并切换分支

git学习笔记_第27张图片  

4. 合并分支

我们切换到新建的分支开发后,相当于在修改副本,原件也就是主分支master是不会被修改的。当我们在分支开发完毕,想要将代码同步到主分支master,就需要将分支合并到主分支上。(需要先切换回主分支master,才能操作)

git checkout master    //切换回主分支master
git merge 分支名字    //将分支内容合并到主分支master

git学习笔记_第28张图片git学习笔记_第29张图片 

 git学习笔记_第30张图片

git学习笔记_第31张图片

git学习笔记_第32张图片

5. 删除分支 

在分支上完成了开发任务,并且已经把内容合并到主分支了,不需要该分支了,可以删除该分支。

git branch -d 分支名字

git学习笔记_第33张图片

五、git远程仓库

远程仓库就是远程的仓库,如github、gitee等代码托管平台,你就可以在上面创建自己的远程仓库,其实可以说就是一个文件夹,将代码提交到远程仓库,你和团队成员就可以随时随地下载项目代码,对于多人协作开发非常方便。(之前都是对本地仓库的操作哈)

1. 克隆远程仓库到本地

如果想要把远程仓库的项目下载到本地,可以使用git clone进行克隆。

git clone 链接

git学习笔记_第34张图片 git学习笔记_第35张图片

git学习笔记_第36张图片

2. 推送本地仓库到远程

git remote add origin 远程仓库地址    //origin是远程仓库默认的名字

git学习笔记_第37张图片git学习笔记_第38张图片

3. 上传本地内容到远程仓库

git push -u origin "master"    //首次推送时使用,将本地内容推送到远程仓库origin的master主分支
git push    //以后使用简化命令

git学习笔记_第39张图片git学习笔记_第40张图片

4. 从远程仓库获取最新内容

你和同事早上都使用git clone克隆远程库的项目到本地,各自进行开发,下午同事比你先下班,他下班的时候使用git push将他的最新代码提交到了远程版本库,后来你下班的时候使用git push提交你的最新代码到远程版本库就会报错,因为你的同事对某些代码进行了修改,现在你与远程版本库的代码就存在冲突,这个时候需要在提交之前使用git pull获取远程版本库的代码与你的代码进行合并,再使用git push提交就没问题。

git fetch origin master    //获取远程仓库的最新代码
git pull  origin master   //获取远程仓库最新内容并合并,可直接使用这个

git学习笔记_第41张图片

5. 查看远程仓库的信息

git remote -v  

说实话我没太看懂这个远程仓库信息,可能只有我一个人在用使用该远程仓库,所以没有体现出远程仓库信息的作用吧。 

6. 关联本地分支与远程分支

之前的操作都是将内容推送到远程仓库的master主分支,前文提到过,团队开发协作中,你不能直接将代码推送到远程仓库的master主分支,大家都是在另外的分支进行开发,只有确定的大版本才会推送到远程仓库master主分支。之前直接git push是推送到默认的远程master主分支,要想以后直接git push就可以推送到另外的某个远程分支,那就必须通过配置将本地分支与该远程分支关联起来。(你也可以不关联,那你每次git push的时候都要写明是提交到哪个远程分支,怪麻烦的)

git branch --set-upstream-to=origin/远程分支名字 本地分支名字    //报错的话git fetch后再次执行该命令

 git学习笔记_第42张图片

 git学习笔记_第43张图片

git学习笔记_第44张图片 git学习笔记_第45张图片git学习笔记_第46张图片git学习笔记_第47张图片

7. 修改本地仓库对应的远程仓库的地址 

当远程仓库地址发生变化时,需要修改本地仓库对应的远程仓库的地址,不然怎么把代码提交到新的远程仓库呢。

git remote set-url origin 新远程仓库地址

git学习笔记_第48张图片git学习笔记_第49张图片 git学习笔记_第50张图片

六、学习小结

git确实很牛,特别方便项目管理和团队协作开发,但是命令确实有点多,我这笨脑瓜子记不住,整理成笔记,忘了就回来看看。后面遇到用得频繁的git命令我会再更新笔记,大家发现错误的地方请指出,非常感谢!

你可能感兴趣的:(笔记,git,学习,github)