一、Git的介绍
1.Git是什么?
Git简单来说是一个工具,是目前世界上最先进的分布式版本控制系统(没有之一),可以有效地、高速地处理从很小到非常大的项目版本管理。Git是Linus Torvalds为了帮助管理 Linux内核开发而开发的一个开放源码的版本控制软件。
2.Git怎么用?
在电脑的空白处,点击鼠标右键,会出现Git GUI Here和Git bash Here。操作者只需点击 Here就会出现一个黑窗口,并在这个黑窗口中书写一些指令即可实现代码管理和协作开发。
3.Git作用是什么?
(1)版本控制:单个人开发或多个人开发;
(2)协作开发:多个人开发。
4.Git的基本概念是?
(1)工作区:.git目录以外的都是工作区,且我们写的所有代码都在工作区。
(2)版本库:.git目录里面的都属于版本仓库。
(3)暂存区:暂存区具有临时性,只是暂时保存文件,或者说代码。
(4)分支:真正的版本(每一个版本都对应若干文件),是保存到分支上的。
5.Git操作常见linux指令有什么?
(1)clear:(快捷键Ctrl+l)清屏;
(2)ls:查看当前目录下面有哪些文件或文件夹;
(3)mkdir 文件夹名:在当前目录下创建文件夹;
(4)cd:进入某个文件夹;
(5)上下箭头:调出操作者之前敲过的代码。
6.Git与GitHub的区别?
Git仅仅是一个代码管理工具,而GitHub则是一个网站,在这个网站上有别人放上去的很多项目,其中我们也可以把GitHub当做远程仓库。GitHub官网地址:github.com/
二、Git的流程
1.Git的安装流程
(1)首先去官网,下载windows版本的git安装包;
(2)下载完成点击安装包,开始安装;
(3)一路next,即傻瓜式安装;
(4)默认安装位置在C盘,最后安装完成,点击finish;
(5)在电脑界面上点击右键,出现Git GUI Here和Git bash Here代表安装成功。
2. Git的使用流程
(1)初始化一个Git仓库,只需要初始化一次
git init:创建Git仓库
(2)设置用户名和邮箱,只需要设置一次
git config --global user.name 用户名
git config --global user.email 邮箱
(3)添加文件到仓库,可能需要N次
git add 代码1 代码2:把工作区中的文件扔到本地仓库的暂存区
git add *: 把工作区中的所有的文件,都扔到本地仓库的暂存区
(4)提交,可能需要N次
git commit -m "说明文字":把本地仓库中暂存区的内存扔到分支上,形成一个版本。
(5)查看形成的版本
git log:查看分支上面都有哪些版本
(6)回退,回到某一版本
git reset --hard HEAD^ 表示回到上一个版本
git reset --hard HEAD^^ 表示回到上上一个版本
git reset --hard 版本id 回到指定的版本
注意:如果一旦回到了上一版本,那么工作区中代码也会跟着改变
(7)提交代码到github(当作git服务器来用)
git push origin master:会把当前分支的内容上传到远程的master分支上
(8)克隆,会得到远程仓储相同的数据,如果多次执行会覆盖本地内容。
git clone [地址]:将GitHub上需要的代码克隆下来
(9)拉代码,将本地仓库与远程仓库代码同步
git pull origin master:会把远程分支的数据得到:(*注意本地-要初始一个仓储!*)
(10)忽略文件: 被忽略的文件不会被提交仓储里去
.gitignore:在这个文件中可以设置要被忽略的文件或者目录。
注释:在.gitignore中可以书写要被忽略的文件的路径,以/开头,一行写一个路径,这些路径所对应的文件都会被忽略,不会被提交到仓储中
写法:
/.idea 会忽略.idea文件
/js 会忽略js目录里的所有文件
/js/*.js 会忽略js目录下所有js文件
3.Git的工作流程
(1)首先在工作区编写代码;
(2)把工作区中的代码扔到本地仓库的暂存区;
(3)把本地仓库暂存区中的代码扔到分支上,形成一个版本。
三、GitHub使用步骤
(1)注册一个账号(用户名与邮箱、密码都要牢记);
(2)创建一个远程的仓库(点击左边+找到Create a new repository,即可创建);
(3)clone远程仓库的代码(利用git clone代码将远程仓库代码克隆下来,以便本地开发 );
(4)在本地进行开发(在自己电脑上的工作区进行代码编写);
(5)进行本地仓库管理(对完成的代码开发扔到版本仓库进行管理);
(6)同步到远程仓库(利用git push代码进行同步操作)。
四、ssh协议
1、了解相关协议
- HTTP协议
HTTP协议是互联网上应用最为广泛的一种网络协议。协议,即为规则,所有的WWW文件都必须遵守这个标准。它被用于计算机与计算机之间的交流。而设计HTTP最初的目的就是为了提供一种发布和接收HTML页面的方法。
我们之间在进行push代码或pull代码时,走的都是https协议,除了有个协议外,还有一种协议,叫ssh
- ssh协议
SSH 为建立在应用层基础上的安全协议。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。
2、ssh协议生成步骤
1.利用ssh-keygen -t rsa -C "GitHub注册用户名" 生成公钥和私钥
保存地址: C:\Users\Administrator.ssh
2.打开公钥id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC65DTni24MAyCRCWacnIA+aOFqkxyAkn6p9/0bM36G25Y0GI+gZ+Sg/bIgeqo0cGBxyIJvWTFEI9B5/x8A0VR6MZ0/RQvZejUT7v9JzVFALP9WpSLjwn+XR4rhajkQDOtwXerMJb4KMyGfbDz75N3Obo1OnTkhX9GTGs552/bGdwUS75udPXHm2OmsLr9DL3+xxRo4c+MzLY/v1og4K3Q77X1aGXKGyOsGzeZFMc1r1TvKQGjTrDpSnmQRNSze9jXxHmJJR9UlqppJWGdVKDVqRTK5imtJlT1n1zkhCGO9wyd1jjDfGx80XWYWWcI1ZfPHI83Su3EcPTsLQG51qd9f huashankejiadmin
3.复制公钥到github上,即表示将公钥给了分享方
4.就可以在本地仓库给github进行push或pull,从而完成远程登录会话,资源共享。