git介绍:
Git是一个开源的分布式版本控制系统,用于敏捷高效的处理任何大小项目。
Git是linus Torvalds为了帮助管理linux内核而开发的一个开放法源码的版本控制软件。
Git 与常用的版本控制工具CVS \SVN 不同,它采用了分布式版本库的方式,不必服务端软件支持。
GIt与SVN的区别
Git 不仅仅是个版本控制系统,它也是个内容管理西宫(CMS),工作管理系统等
如果你是具有一个使用SVN背景的人,你需要做一定的思想转换,来使用Git提供的一些概念和特征。
1、Git是分布式的,SVN不是:这是Git和其他非分布式的版本控制系统,例如:SVN、CVS等,最核心的区别
2、Git分支和SVN的分支不同,而SVN中一点都不特别,起始它就是版本库中的另外一个目录
3、Git把内容按元数据方式存储,而SVN是按照文件:所有的资源控制系统都是把文件的原信息隐藏在一个列斯svn CVS等的文件夹里
4、Git没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比Git缺少的最大的一个特征
5、Git的内容完整性要优于SVN: Git的内容存储使用的是SHA-1哈希算法,这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏
Git 与 SVN 区别点:
2、安装:
下载安装包:https://git-scm.com/downloads
双击运行
验证: git --version
3、Git配置:
Git提供了一个叫做git config的工具,专门用来配置或读取相应的工作环境变量
这些环境变量,决定了git在各个环境的具体工作方式和行为。这些变量可以存放在以下三个不同的地方:
/etc/gitconfig 文件:系统中对所有的用户都普遍适用的配置。若适用git config时用 --system选项,读写的就是这个文件
~/.gitconfig文件:用户目录下的配置文件只适用于该用户。若适用 git config 时用 --global 选项,读写的就是这个文件
当前项目的git目录中的配置文件(也就是工作目录中的.git/config文件):这里的配置仅仅针对当前项目有效。每一个级别的配置都会覆盖上层的相同配置,所以.git/config 里的配置会覆盖/etc/git config中的同名变量。
在windows系统上,git会找寻用户主目录下的.gitconfig文件。主目录即$HOME变量指定的目录,一般都是C:\Documents and Settings\$USER。
此外,git 还会尝试找寻/etc/gitconfig文件,只不过看当初git装在什么目录,就以此作为跟目录来定位。
用户信息配置:
git config --global user.email "email@163.com"
git config --global user.name "Your name"
如果用了--global选项,那么更改的配置文件就是位于你用户主目录下的那个,以后你所有的项目都会默认使用这里配置的用户信息。
如果要在某个特定的项目中使用其他名字或者邮件,只需要去掉--global 选项重新配置即可,新设定把偶才能在当前的./git/config文件里
4、git的使用流程:
先来理解一下Git工作区、暂存区和版本库的概念:
工作区:就是你在电脑里能看到的目录
暂存区:英文叫stage 或者index,一般存放在.git目录下的index文件中,所以我们把暂存区有时也叫索引(index)
版本库(本地仓库):工作区有一个隐藏的目录.git,这个不算工作区,而是git的版本库
远程仓库:远端服务器上的代码仓库
常用的六个命令:git clone、git push、git add、git commit、git checkout、git pull,
一个简单的操作:
git init;
git add;
git commit
git init --- 初始化仓库
git add . --添加文件到缓存区
git commit --将暂存区内容添加到仓库中
创建仓库命令:
下表列出了git创建仓库的命令:
git init 初始化仓库
git clone url 拷贝一份远程仓库,也就是下载一个项目
提交与修改:
git 的工作就是创建和保存你的项目的快照及与之后的快照进行对比。
git add 添加文件到仓库
git status 查看仓库当前的状态,显示有变更的文件
git diff 比较文件的不同,即暂存区和工作区的差异。
git commit --- 提交暂存区本地仓库
git reset --- 回退版本
git rm -- 删除工作区文件
git mv 移动或重命名工作区文件
提交日志:
git log 查看历史提交记录
git blame 【file】 以列表形式查看指定文件的历史修改记录
远程操作:
git remote -- 远程仓库操作
git fetch 从远程获取代码库
git pull 下载远程代码并合并
git push 上传远程代码并合并
git commit -m [message] message 可以是一些备注信息。
提交暂存区的指定文件到仓库区:
git commit [file1] [file2] -m [message]
-a 参数设置修改文件后 不需要执行git add 命令,直接来提交
git commit -a
基础操作:
1、克隆代码: git clone url
2、初始化,建立本地版本库
--git init
--说明: 直接clone 远程仓库时,不需要在init
3、查看版本状态:git status
4、将修改提交至暂存区:git add 文件名
5、将修改提交至git库: git commit -m “提示消息”
6、拉去远程仓库: git pull
7、推送远程仓库:git push
具体的操作流程:
1、在gitee上创建项目demo3
git clone https://gitee.com/richard-kong/demo3.git ----从gitee服务器将项目下载到本地电脑
2、在本地电脑上更改其中的hello.py文件,使用git status 查看版本状态
3、git add hello.py 将修改提交至暂存区
4、git commit -m [message]--将修改提交至git库
5、git push --推送远程库
6、到远程库上查看是否已经修改了代码