Git
看目录,越往后面越重要
目录 |
---|
一、git是什么? |
二、为什么要使用Git? |
三、版本控制工具 |
四、git下载安装以及环境配置 |
五、git基本命令 |
六、git项目搭建 |
七、远程仓库怎么搞?git,gitlab,github,gitee区别 |
八、idea集成Git |
一、Git是什么?
- Git是一款分布式源代码管理工具(版本控制工具)
- 使用Git,每次提交或保存项目状态时,Git基本上都会记录当时所有文件的外观,并存储对该快照的引用
二、为什么要使用Git
-
当你需要做一个大工程的时候,文件的管理无疑是非常庞大的工作,因为你需要不断的修改更新文件内容,同时可能还要保留旧版本保证可以复原,这样就需要备份多个版本的文件。
-
并且在大多数情况下一个工程需要在多数人来共同维护,那么这种情况下不同人之间修改内容的合并也是非常麻烦的,这时使用git就可以很轻松的解决这些问题。
三、版本控制工具
主流的版本控制器有如下这些:
-
Git :分布式版本控制(最流行)
-
SVN(Subversion): 集中版本控制(会用到)
-
CVS(Concurrent Versions System)
-
VSS(Micorosoft Visual SourceSafe)
-
TFS(Team Foundation Server)
-
Visual Studio Online
git 与 svn 的区别
目前最流行的版本控制框架就是git,但是也有很多用svn的;
git
优点:
-
适合分布式开发,强调个体。
-
公共服务器压力和数据量都不会太大。
-
速度快、灵活。
-
任意两个开发者之间可以很容易的解决冲突。
-
离线工作。
缺点:
-
资料少(起码中文资料很少)。
-
学习周期相对而言比较长。
-
不符合常规思维。
-
代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息
svn
优点:
-
集中式管理,管理方式在服务端配置好,客户端只需要同步提交即可,使用方便,操作简单,很容易就可以上手。
-
在服务端统一控制好访问权限,利用代码的安全管理。
-
所有的代码以服务端为准,代码一致性高。
缺点:
-
所有操作都需要通过服务端进行同步,这会导致服务器性能要求比较高。如果服务器宕机了就无法提交代码了。
-
分支管理不灵活,svn分支是一个完整的目录,且这个目录拥有完整的实际文件,这些操作都是在服务端进行同步的。
-
不是本地化操作,如果要删除分支,也是需要将远程的分支进行删除,这会导致大家都得同步。
-
需要连网,如果无法连接到服务器就无法提交代码。
四、git下载安装以及环境配置
git官网下载
1.点击Downloads选择自己的操作系统,并选择32位或者64位
如果下载慢,那就选用国内镜像下载,这里提供了[阿里镜像地址](https://registry.npmmirror.com/binary.html?path=git-for-windows/),选择比较稳定的版本,自己运用的系统版本
2.比如我选了这个,点击下载
3.下来就是安装流程了,这里我就不废话了,很简单步骤,直接看该博主安装博文
Git下载安装教程
打开git除了该博主说的桌面快捷键外,右击鼠标,选择 “Git Bash Here” 也可以;另外环境配置也可能已经自动给配置上了,配置上的话就不用再配置了
4.打开git,其实在git文本框里操作文件的命令就是linux的命令,如下:
*五、git基本命令
查看git配置
git config -l
那这个配置文件在本地的什么地方呢?
git安装目录/etc/gitconfig 文件
查看git本地系统配置
git config --system --list
同样这个本地系统配置文件在哪里放着呢?
c盘/用户/用户名下的 “.gitconfig”文件中
**这个本地配置需要自己配置。以后提交代码之类的会用得着,怎么配置呢?如下
:
然后打开本地配置文件,发现信息已经写入
查看git当前用户配置
--global全局
git config --global --list
克隆代码
git clone 远程地址
查看本地分支
git branch
查看远程分支
git branch -r
查看所有分支
git branch -a
切换分支
git checkout 分支名
创建分支
git branch 分支名
创建新分支并切换
git checkout -b 分支名
查看该分支 状态
git status
查看 日志
git log
git从远程分支创建本地分支
git checkout -b 本地分支名 origin/远程分支名
git添加内容到缓存区
git add .
git 提交 内容到本地
git commit
git 更新仓库内容
git pull origin master
git 提交内容到远程仓库
git push origin master #-f强推
git 获取最新变更
git fetch origin
说明
这些命令在项目上用的最多的就是add、commit、push、pull、checkout
Working Directory:工作区,平时存放项目代码的地方
Stage(index):用于临时存放改动的文件
Repostory:仓库区(或本地仓库),就是安全存放数据的位置,这里有你提交的所有版本的数据;其中HEAD指向最新放入仓库的版本
Remote:远程仓库,托管代码的服务器,可以简单的任务是你项目组中的一台电脑用于远程数据交换本地的三个区域,确切的说应该是git仓库中HEAD指向的版本。
六、Git项目搭建
git安装上了,命令也学习了,那么项目如何搭建呢?
方式一:
1.首先创建一个空文件夹,如下,目前是空文件夹
2. 右键点“Git Bash Here”,输入“git init”,也就是初始化项目,文件中出现了一个.git隐藏文件夹,若是没发现有,点开查看——勾选“隐藏的文件”
方式二:
直接克隆远程项目
git clone [远程项目url]
七、远程仓库怎么搞?
这里我们先聊一下Git,Gitee,GitLab,GitHub是个什么玩意?
先看定义:
-
Git 分布式版本控制系统
-
Gitee 码云,国内远程仓库,也就是在线代码托管工具,你的项目就可以远程推送到这里;Gitee官网
-
GitLab 一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务。一般用于企业内搭建私服,要自己搭环境 GitLab官网
-
GitHub 也是一个在线代码托管的仓库,国外的远程仓库;毕竟是国外的,打开就挺慢 GitHub官网
——那么这里呢就给说下Gitee
- 1.首先就是注册登录以后,将基本信息修改下
- 2.生成公钥,也就是你本地代码推送至远程仓库的时候不需要每次输入用户名密码;我这里已经有了;
任意目录下右键点击“Git Bash Here” 输入以下内容,回车
--rsa是加密算法方式
“ssh-keygen -t rsa”
此时已经生成公钥,公钥文件在本地目录c盘/用户/用户名/.ssh/id_rsa.pub
打开该文件,将里面的内容全部粘贴到以下输入框。点击确定即可添加
- 3.创建仓库,仓库修改为公有需要创建以后再修改
- 4.目前仓库建好了,然后将远程仓库克隆到本地
创建文件夹,然后输入以下内容
git clone [远程仓库url]
这个时候本地文件和远程文件是一样的
- 5.命令测试一下
在克隆的文件夹里右键打开git,操作以下命令
--查看状态
git status
--创建一个文件
touch hello.html
--查看状态,会发现有个红色文件,表示有新文件没有add
git status
--添加
git add .
--查看状态,发现文件变绿,表示有没提交的文件
git status
--提交文件到本地仓库,这里要加-m 并且后面说明提交信息
git commit -m “new file hello.html”
--查看状态,发现提示没有要提交的文件了
git status
--推送到远程仓库
git push origin master
--这个时候你会发现你的远程仓库已经有了你推送的文件hello.html
*八、IDEA集成Git
1.Version Control找到Git,填写自己的Git路径,点击OK
2.或者直接将.git文件复制粘贴到本项目下,会发现idea右上方出现Git按钮,右下角有显示提交历史
直接用idea可以都搞定;推送的时候有可能要输入用户名密码
希望可以帮助到您