目录
一. Git简介
分布式特点
优缺点
Git 与 SVN 区别
二. Git安装
三. Git常用命令
四. Git的文件状态
1.文件状态
2.工作区域
一. Git简介
Git 是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。 也是Linus Torvalds为了帮助管理Linux内核开发 而开发的一个开放源码的版本控制软件。
Git --- The stupid content tracker, 傻瓜内容跟踪器。Linus Torvalds 是这样给我们介绍 Git 的。
Git 是基于 Linux内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(注:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。
实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发。
-
分布式特点
分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。
-
优缺点
优点:
适合分布式开发,强调个体。
公共服务器压力和数据量都不会太大。
速度快、灵活。
任意两个开发者之间可以很容易的解决冲突。
离线工作。
缺点:
资料少(起码中文资料很少)。
学习周期相对而言比较长。
不符合常规思维。
代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。
-
Git 与 SVN 区别
GIT 是分布式的,SVN 不是
GIT 把内容按元数据方式存储,而 SVN 是按文件
GIT 分支和 SVN 的分支不同
GIT 没有一个全局的版本号,而 SVN 有
GIT 的内容完整性要优于 SVN
二. Git安装
安装目录
项目存储名
选择git使用的编辑器
行末换行符转换,使用默认值
安装
在任意位置右键出现下面两个小东西就是安装成功了
三. Git常用命令
这里呢,要先注册码云的账号
新建仓库
创建完成后,就会看到以下命令
先执行Git全局设置命令 ,会在C盘➡users➡私人目录下初见一个.gitconfig文件
然后创建仓库
git commit -m "first commit" 提交本地仓库
git remote add origin https://gitee.com/li-jie1025/xissl1109.git 提交远程仓库
git push -u origin "master" 推送远程仓库注意:li-jie1025 账号名
在推送时有可能会弹出一个提示框要你输入账号和密码
到这里,本地仓库就已经和码云远程仓库连接成功了。
四. Git的文件状态
git的文件状态是其git核心内容,了解后对后续的操作有莫大的帮助,不同的文件状态又存储在不同的工作区域中。
1.文件状态
git中的文件有以下几种状态
- 未跟踪(untrack):表示文件为新增加的
- 已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中
- 已提交(committed):表示文件已保存在git仓库中。
- 已修改(modified):表示修改了文件,但还没保存到git仓库中。
2.工作区域
按照本地计算机与远程计算机划分,工作区域有以下几种
- 1)本地计算机
Working Directory(工作目录):即正在编辑的文件状态。文件状态为未跟踪(untrack)和已修改(modified)在此区域内。
Staging Area(暂存区):保存了下次将提交的文件列表信息。文件状态为已暂存(staged)在此区域内。
Repository(本地仓库):提交到本地仓库的文件。
- 2)远程计算机
Repository(远程仓库):已提交到远程计算机内的文件。