赞
踩
版本控制软件是一个用来记录文件变化,以便将来查阅特定版本修订情况的系统,因此有时也叫做“版本控制系统”。
版本控制系统的分类,本地直接放在客户本地,集中,将最新版本放本地,其它放服务器,但是服务器坏了,就全崩了(代表SVN)且不支持离线,分布,本地和客户都保留全部的版本,谁坏了就从另一方恢复(代表Git):
Git 是一个开源的分布式版本控制系统,是目前世界上最先进、最流行的版本控制系统。可以快速高效地处理从很小到非常大的项目版本管理。Git直接完整记录快照,而非只记录差异,这样便于版本之间的切换,但就是有点浪费内存,而且所有操作都是本地执行
git help config(直接在浏览器打开)获取帮助信息,想要直接在终端打开,使用 git config -h即可
在项目目录中,通过鼠标右键打开“Git Bash”, 执行 git init 命令将当前的目录转化为 Git 仓库。git init 命令会创建一个名为 .git 的隐藏目录,这个 .git 目录就是当前项目的 Git 仓库,里面包含了初始的必要文件,这些文件是 Git 仓库的必要组成部分。
可以使用 git status 命令查看文件处于什么状态, Untracked files(未跟踪的文件), 也可以使用精简的形式git status -s或者git status --short,未跟踪文件前面会有两个红色的感叹号。Changes to be committed 这行的下面,说明已被跟踪,并处于暂存状态,精简方式是会在文件前面有一个绿色的A
使用命令 git add 文件名,后面写上要跟踪文件名,运行后该文件就会处于Changes to be committed 状态。
将暂存区的文件与Git仓库文件内容保持一致(要保证所有的项目文件都已经放到了暂存区),提交到Git仓库进行保存,使用,git commit -m “提交的描述信息”,此时git status 为nothing to commit, working tree clean证明工作区中所有的文件都处于未修改的状态,没有任何文件需要被提交
对已经提交的文件进行修改后,git status 为红色的modified,代表已修改,此时-s为红色的M
git add . 一次性将所有的新增和修改过的文件加入暂存区
git reset HEAD 要移除的文件名,或者直接git reset . 将全部文件从暂存区移出
git commit -a -m “描述信息” 可以直接将已经放入工作区中的文件直接放到本地git仓库,从而跳过暂存区
Git 仓库中移除文件的方式有两种:
① 从 Git 仓库和工作区(本地)中同时移除对应的文件 git rm -f 文件名
② 只从 Git 仓库中移除指定的文件,但保留工作区中对应的文件git rm --cached 文件名
此时状态会变成绿色的D
创建一个名为 .gitignore 的配置文件(直接创建修改名字),列出要忽略的文件的匹配模式,使得这些文件无需纳入 Git 的管理:
① 以 # 开头的是注释
② 以 / 结尾的是目录
③ 以 / 开头防止递归,意思只匹配这个目录下的,其它目录下的改内容不受影响)
④ 以 ! 开头表示取反
⑤ 可以使用 glob 模式进行文件和文件夹的匹配(glob 指简化了的正则表达式),常用的正则表达式
开源是指不仅提供程序还提供程序的源代码 。闭源是只提供程序,不提供源代码。开源并不意味着完全没有限制,为了限制使用者的使用范围和保护作者的权利,每个开源项目都应该遵守开源 许可协议(Open Source License) ,常用的为GPL和MIT
分支的使用:在进行多人协作开发的时候,为了防止互相干扰,提高协同开发的体验,建议每个开发者都基于分支进行项目 功能的开发。
初始化本地Git仓库的时候,Git默认已经帮我们创建了一个名字叫做master 的分支。通常我们把这个 master 分支叫做主分支。 master 主分支的作用是:用来保存和记录整个项目已完成的功能代码。 因此,不允许程序员直接在master 分支上修改代码,因为这样容易导致整个项目崩溃。为了开发,便有了功能分支,功能分支指的是专门用来开发新功能的分支,它是临时从master 主分支上分叉出来的,当新功能开发且测试 完毕后,最终需要合并到master 主分支上。
在两个不同的分支中对同一文件进行了修改并提交仓库后,进行文件的合并的时候会发生冲突,这个时候需要手动打开冲突的文件,进行修改,然后再提交到git即可。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。