git介绍
简单理解 一个能够随时还原、更新,能够保存你任何一次作业内容的变态玩意,有了它,妈妈再也不用担心我的代码文件被误删啦
git安装
- git下载地址 戳这里
 - 选择你的电脑系统下载即可 ,,然后一路next即可
 
初始化git仓库
- 这个仓库会存放:git对我们项目代码进行备份的文件
 - 在项目目录右键打开git bash
 - 输入命令:
git init自报家门
 - 在git中设置当前使用的用户是谁
 - 命令:
- 配置用户名: 
git config --global user.name "你的名称"// global 全局 - 配 置邮 箱: 
git config --global user.email "你的邮箱"// 改邮箱可不是真实邮箱,但必须是正确的邮箱地址 
 - 配置用户名: 
 
把代码放进.git仓库
- 1.把代码放到仓库门口 
git add .// 这里的.是指当前目录下的修改的所有文件添加到暂存区
 - 2.把仓库门的代码房贷里面的房间中
git commit -m "这是对本次代码提交的说明"
 
可以一次性把我们的代码放进版本库
git commit all -m "一些说明"- –all 表示把所有修改的文件提交到版本库
 
查看当前状态
- 可以用来查看当前代码有没有被提交到仓库中
 - 命令: 
git status 
git忽略文件
- .gitignore,在这个文件中可以设置要被忽略
 - 被忽略的文件不会被提交到仓库中
 - 在.gitignore中可以书写要被忽略的文件的路径,以/开头,一行写一个路径,这些路径所对应的文件都会被忽略,不会被提交到仓库中
- 写法  (* 通配符)
/.idea会忽略.idea/js会忽略js目录里的所有文件/js/*.js会忽略js目录下所有js文件
 
 - 写法  (* 通配符)
 
查看日志
- 命令: 
git log查看历史提交记录git log --oneline可以看到简洁版的日志
 
回退指定版本
命令:
git reset --hard Head~0表示回退到上一次代码提交时的状态git reset --hard Head~1表示回退到上上次代码提交时的状态
…
以此类推git reset --hard [版本号]可以通过版本号精确的回退到某一个版本号的状态git reflog可以看到每一次切换版本的记录:可以看到所有提交的版本号
git分支操作
- 默认有一个主分支master
 
创建分支
git branch dev- 创建一个dev分支
 - 在刚创建时dev分支里面的东站与master分支的东西是一样的
 
切换分支
git checkout dev- 切换到指定分支,这里的切到名为dev的分支
git branch可以查看当前有哪些分支 
- 切换到指定分支,这里的切到名为dev的分支
 
合并分支
git merge dev- 合并分支内容,把当前分支与指定的分支(dev),进行合并
 - 当前分支指的是
git branch命令输出的前面带有*号的分支 
- 合并时如果有冲突,需手动去处理,处理后还需要再提交一次
 
GitHub
- 不是git,只是一个网站
 - 这个网站提供可允许别人通过git上传代码的功能
 
提交代码到github(当作git服务器来用)
git push [地址] master- 实例:
git push https://github.com/yangyiru/cnode.git master - 会把当前分支的内容上传到远程的master分支上
 
- 实例:
 git pull [地址] 分支名- 示例: 
git pull https://github.com/yangyiru/cnode.git master - 会把远程分支的数据得到(注意本地要初始化一个仓库 
git init) 
- 示例: 
 git clone [地址]- 会得到远程仓库相同的数据,如果多次执行会覆盖本地内容
 
.ssh方式上传代码
- 公钥 私钥,两者之间有关联
 - 生成公钥和私钥
ssh-keygen -t rsa -C "邮箱@qq.com"
 
在push和pull操作时
- 先pull,再push
 push和pull时简写方式
git remote add origin [地址]origin指当前push或者pull的地址当我们在push时,加上-u参数,那么在下一次push时,我们只需要写死
git push就能上传我们的代码。(加上-u之后,git会把当前分支与远程指定的分支进行关联。git push origin master)