git服务总结

不羁岁月 提交于 2020-03-24 14:36:54

3 月,跳不动了?>>>

工作原理

Git 在本地磁盘上就保存着所有当前项目的历史更新,所以处理起来速度飞快

对于任何一个文件,在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

由此我们看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。

每个项目都有一个 Git 目录(如果 git clone 出来的话,就是其中 .git 的目录;如果 git clone --bare 的话,新建的目录本身就是 Git 目录。),它是 Git 用来保存元数据和对象数据库的地方。该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。

从项目中取出某个版本的所有文件和目录,用以开始后续工作的叫做工作目录。这些文件实际上都是从 Git 目录中的压缩对象数据库中提取出来的,接下来就可以在工作目录中对这些文件进行编辑。

所谓的暂存区域只不过是个简单的文件,一般都放在 Git 目录中。有时候人们会把这个文件叫做索引文件,不过标准说法还是叫暂存区域。

基本的 Git 工作流程如下:

1.在工作目录中修改某些文件。

2.对修改后的文件进行快照,然后保存到暂存区域。

3.提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。

所以,我们可以从文件所处的位置来判断状态:如果是 Git 目录中保存着的特定版本文件,就属于已提交状态;如果作了修改并已放入暂存区域,就属于已暂存状态;如果自上次取出后,作了修改但还没有放到暂存区域,就是已修改状态。

GIT优点

•更顺畅的工作流程,开发过程中,完全可以离线操作

•快速,Git分布式架构使得本地仓库包含所有的历史版本信息,你可以在不同的版本之间快速切换

•弹性的本地分支,在svn下,你建一个分支需要把源代码复制到另外一个文件夹,而在Git下,创建分支的代价是非常小的,只需一条命令

•仓库目录结构简洁,用Git复制一个项目,只会在项目根目录创建一个.git的目录,而其他目录很干净

•内容按元数据方式存储,所有的版本信息都位于.git目录下

•完整性好,更易于协作开发

•用户群大,现在已经有成千上万个开源项目采用Git来做项目管理,github上更是有无数个代码仓库

Git使用方法

git init here      // 创建本地仓库(repository),将会在文件夹下创建一个 .git 文件夹,.git 文件夹里存储了所有的版本信息、标记等内容

git remote add origin git@github.com:winter1991/helloworld.git        //把本地仓库和远程仓库关联起来。如果不执行这个命令的话,每次 push 的时候都需要指定远程服务器的地址

git add        // 从本地仓库增删,结果将会保存到本机的缓存里面

git commit -m "注释"     //提交,把本机缓存中的内容提交到本机的 HEAD 里面

git push origin master   //把本地的 commit push 到远程服务器上, origin 也就是之前 git remote add origin 那个命令里面的 origin,origin 替代了服务器仓库地址:git push git@github.com:winter1991/helloworld.git master

git pull origin master  //从远程服务器 pull 新的改动

git status             //查看状态

git add -A            //提交全部修改

git config --global user.name "xxx"     //配置用户名,上传本地 repository 到服务器上的时候,在 Github 上会显示这里配置的上传者信息

git config --global user.email "xxx"     //配置邮箱

git config --list                                     //查看配置列表

git rm xxx                                                //从本地仓库中删除指定文件

git rm -r xxx                                              //从本地仓库中删除指定文件夹

git commit -m "注释"                             //把本机缓存中的内容提交到本机的 HEAD 里面

git push origin master                          //把本地的 commit push 到远程仓库中

使用 .gitignore 文件忽略指定的内容:

 

git中文使用文档

http://www.yiibai.com/git/

使用github来提交代码

http://www.yiibai.com/git/

使用流程在github官网。

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!