一、Git与SVN的区别
1.GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS)工作管理系统等。
2.如果你是一个具有使用SVN背景的人,你需要做定的思想转换, 来适应GT提供的一些概念和特征。
3.Git与SVN区别点:
(1)GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVN、CNS等,最核心的区别。
(2)GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
(3)GIT分支和SVN的分支不同:分支在SVN中一点不特别, 就是版本库中的另外的 一个目录。
(4)GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。
(5)GIT的内容完整性要优于SVN: GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完
整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
二、Git的安装配置
1.有个叫做msysGit的项目提供了安装包,可以到GitHub的页面上下载exe安装文件并运行:
2.配置用户信息:
git config --global user.name "yx"
git config --global user.email “yx@163.com"
3.查看信息
git config --list
4.Git工作区、暂存区和版本库:
(1)工作区:就是你在电脑里能看到的目录。
(2)暂存区:英文叫stage,或index。 一般存放在 ”.git目录下”下的index文件 (.git/index)中,所以我们把暂存区有时也叫作索引(index)。
(3)版本库:工作区有一个隐藏目录.git.这个不算工作区,而是Gi的版本库。
5.Git创建仓库:
(1)git init: Git使用git init命令来初始化一个Git 仓库,Git 的很多命令都需要在Git的仓库中运行,所以git init是使用Git的第一个命令。在执行完成git init命令后,Git 仓库会生成一个.git目录, 该目录包含了资源的所有元数据,其他的项目目录保持不变(不像SVN会在每个子目录生成.svn目录,Git只在仓库的根目录生成.git 目录)。
(2) ll: 查看所有文件个数
(3) Is -a: 查看所有文件
(4)git add: 添加文件到版本库,命令可将该文件添加到缓存
(5)git commit: 使用gitadd命令将想要快照的内容写入缓存区,而执行git commit将缓存区内容添加到仓库中.
(6)git status: 查看仓库状态,以查看在你上次提交之后是否有修改。
6.Git基本操作:
(1)git reset --hard: 版本号。
(2)git reset HEAD: 命令用于取消已缓存的内容。
(3)git checkout -- 文件名: 清除缓存区的内容。
(4)git log: 查看提交历史记录
(5)git rm 文件名: 清除文件
(6)git commit -m "delete 文件名": 清除仓库文件
7.远程仓库:
(1) ssh-keygen -t rsa -C "email姓名": 创建SSH key:连接远程仓库和本地仓库
(2) ssh -T git@github.com: 查看本地是否和github连接成功
8.Git分支管理:
(1)git branch (branchname): 创建分支命令
(2)git checkout (branchname): 切换分支命令
(3)git merge (branchname): 合并分支命令
(4)git branch: 列出分支基本命令
(5)git branch -d (branchname): 删除分支命令
9.克隆仓库:
(1)git clone 远程仓库的地址: 克隆远程仓库到本地
(2)新建文件在本地
(3)git add 文件名: 提交暂存区
(4)git commit -m “提交内容”: 提交仓库
(5)git push: 推送到远程仓库
9.大体的思路
(1)配置个人信息--->初始化仓库--->提交到暂存区--->提交到本地仓库
(2)链接远程仓库:通过密钥链接远程仓库
(3)提交需要的文件到本地仓库--->提交远程仓库
(4)分支:
创建分支---切换分支---提交到当前分支---切换到主分支---合并分支---将本地仓库提交到远程仓库
三、less简介
Less类似于Jquery
1.LESSCSS是一种动态样式语言,属于CSS预处理语言的一种,它使用类似CSS的语法,为CSS的赋予了动态语言的特性,如变量、继承运算、函数等,更方便CSS的编写和维护。
2.LESSCSS可以在多种语言、环境中使用,包括浏览器端、桌面客户端(Koala)、服务端。
3.LESS可以让我们用更少的代码做更多的事情。
4.LESS是动态的样式表语言,通过简洁明了的语法定义,使编写CSS的工作变得非常简单。less扩展了cs的动态行为。
5.Less语法:@argument
Less@arguments包含了所有传递进来的参数。
如果你不想单独处理每个参数的话就可以像这样写:
@size:200px;
.box-shadow(@x: 3px, @y: 3px, @blur: 1px, @color:#f00) {
box- shadow: @arguments;
-moz-box-shadow. @arguments;
-webkit-box-shadow: @arguments;
}
6.Less语法:避免编译
有时候我们需要输出一些不正确的CSS语法或者使用一些LESS不认识的专有语法。
例如:IE滤镜、要输出这样的值我们可以在字符串前加上一 个~
例如:
.alpha1{
filter:~"alpha(opacity=100,finishopacity=0,style=3)";
/*矩形渐变,中间不透明,四周透明*/
}
四、SVN的注意点
1.我们想要从svn上更新项目得时候 是从svn版本库里面去更新,所以需要去先更新 在提交自己的代码,防止别人提交上去的代码之后我们在提交 在版本库中出现冲突 这样别人下载的代码就可能是出现冲突的文件,所以我们需要先更新在提交有冲突自己去解决。
2.当我们遇到冲突通常会出现三个文件,然后会是这种格式mine和===中间部分是我们写的代码,r.97是版本号 是别人提交的代码。
我们根据这个 去合并之后删除多余的两个文件 此时提交的代码就没有冲突了。
3.提交代码可以整个文件进行提交 但是不建议这样做 可以把做的功能模块提交,或者单文件提交,防止提交了自己的配置文件和别人产生不必要的冲突。
4.删除文件的时候 还需要去提交操作,不然没效果 别人还是能update到。