-
Git
Git的介绍:
什么是git?
Git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git是为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。
Git使用的基本流程:
Git的安装
在浏览器中搜索git进入官网直接download安装,安装时一直next直到finish。验证是否安装成功,在窗口单击右键若出现Git Bash here即为安装成功。
初始化Git仓储/仓库
- 创建一个新的文件夹,在该文件夹的基础上右键打开Git Bash here。
- 输入命令git init,在当前文件夹下出现一个新的.git文件,该文件对我们的项目代码进行备份。
- 命令:
创建仓库:git init
配置用户信息
- 使用者在git中设置用户的个人信息,每一次备份都会把用户的信息存储起来。
- 命令:
配置用户名:
git config --global user.name "xiaoming"
配置邮箱:git config --global user.email "xm@sina.com"
把代码存储到.git仓库中
-
1.把代码放到仓储的门口
git add ./readme.md所指定的文件放到大门口
git add ./把所有的修改的文件添加到大门口 -
2.查看当前的状态
可以用来查看当前代码有没有被放到仓库中,若出现红色字体提示则重新重复此过程,相反则存放成功。
git status -
3.把仓库门口的代码放到里面的房间中去
git commit -m "这是对这次添加的东西的说明" -
4.查看日志
git log查看历史提交的日志
git log --oneline可以看到简洁版的日志 -
5.回退到指定的版本
git reset --hard Head~0表示回退到上一次代码提交时的状态
git reset --hard Head~1表示回退到上上次代码提交时的状态
git reset --hard 版本id可以通过版本号精确的回退到某一次提交时的状态
git reflog可以看到每一次切换版本的记录:可以看到所有提交的版本id号
git中的忽略文件
- .gitignore,在这个文件中可以设置需要被忽略的文件或者目录。
- 被忽略的文件不会被从工作区提交仓库里去.
- 在.gitignore中可以书写要被忽略的文件的路径,以/开头,一行写一个路径,这些路径所对应的文件都会被忽略, 不会被提交到仓储中
写法:
/.idea会忽略.idea文件
/js会忽略js目录里的所有文件
/js/*.js会忽略js目录下所有js文件
分支:
- 默认是有一个主分支master
创建分支
- 创建了一个dev分支
- 在刚创建时dev分支里的东西和master分支里的东西是一样的
git branch dev
切换分支
- 切换到指定的分支,这里的切换到名为dev的分支
git branch可以查看当前有哪些分支git checkoudet v
合并分支
- 合并分支内容,把当前分支与指定的分支(dev),进行合并
- 当前分支指的是
git branch命令输出的前面有*号的分支
- 合并时如果有冲突,需要手动去处理,处理后还需要再提交一次.
git merge dev
Github
- Github(github.com)是一个面向开源及私有软件项目的托管平台,因为只支持git作为唯一的版本库格式进行托管。
提交代码到github(当作git服务器来用)
1.注册github账号,新建一个远程仓库。
2.在当前工作区进行开发,然后把当前分支的内容上传到远程的master分支上
例如:
git pull [地址] master
git pull github.com/huanghuaito… master
git clone [地址]
会得到远程仓储相同的数据,如果多次执行会覆盖本地内容。
ssh方式上传代码
- 公钥 私钥,两者之间是有关联的。
- 生成公钥,和私钥
ssh-keygen -t rsa -C "xiaoming@sina.com"
push和pull操作
- 先pull将远程master分支的版本刷新,继续进行开发,然后再push
- 当我们在push时,加上-u参数,那么在下一次push时,我们只需要写上
git push就能上传我们的代码。(加上-u之后,git会把当前分支与远程的指定的分支进行关联。git push origin master -u)。