git是一款源代码管理工具 是分布式版本管理工具
分布式管理必须先在本地提交然后才能提交到服务器;
svn集中式版本管理工具
集中式版本管理工具离开服务器就做不了版本管理;
初始化仓库
1、用git初始化过的文件夹会建立一个仓库
2、创建git仓库的步骤
a) 创建一个文件夹
b) 在当前文件夹当中右键打开git bash
c) 执行git init
注意:
1、.git是隐藏文件夹,一定要把查看文件选项打开
配置用户信息
"git config user.name = ‘bicycle‘"
"git config user.email =‘[email protected]‘"
"git config --global user.name = ‘bicycle‘"
"git config --global user.email =‘[email protected]‘"
查看配置信息是否正常
"git config --list"
在git中有三个区:工作区 暂存区 代码仓库
"git status"查看文件状态
git status不同的颜色代表的含义是什么?
红色代表:新添加或修改了,但是没有添加到暂存区
绿色代表:添加到了暂存区,但还没有添加到仓库
“git add .”可以把当前所有的修改全部提交到暂存区当中
"git add ./index.html"将文件由工作区添加到暂存区
"git add ."将当前目录下全部文件由工作区添加到暂存区
"git commit -m ‘注释‘"将暂存区文件提交到仓库中去
"git commit -a -m"这是针对修改过的文件直接提交到仓库中 不推荐使用
"git status"工作区当前状态 红色代表工作区未添加到暂存区 绿色代表暂存区未提交到仓库中
"在.git文件夹所在目录新建一个名为.gitignore的文件 在文件中写上需要被忽略的文件的路径"
"git diff"文件差异的比较 以工作区为基准和暂存区比较如果暂存区没数据和最近一次暂存区提交的数据对比
"git diff --cached"文件差异的比较 以暂存区为基准和仓库文件进行比较
"git log"文件日志 可以查看每一次提交的日志
"git log --oneline"使用简洁的形式输出提交的日志
"git reset --hard head·0"日志回退到上一次提交
"git reset --hard head~1"日志回退到上上一次提交
"git reset --hard head~2"日志回退到上上上一次提交
"git reset --hard 版本号"日志回退到指定版本号
"git reflog"可以查看之前所有版本切换的操作记录
"git branch" 查看所有分支*对应当前分支
"git branch 分支名" 创建一个新的分支
"git branch -d 分支名" 删除分支
"git checkout 分支名" 切换分支
"git merge 分支名" 在主线程操作将分支合并到主线程上
"git" 提交中的冲突 如果git不能自动合并分支,就会有冲突我们需要手动
解决冲突,然后再次提交(冲突:两个分支处理同一个文件[同一行])
github与git
git 版本管理工具 github就是一个网站只是这个网站提供了git服务器的功能
上传代码到git服务器(push)
"git push 地址要推到的地址 master"
上传时可以使用一些简化的命令
将远程服务器地址写成变量的形式 通过"git remote add [变量名] 远程服务器地址"
"git remote add origin https://github.com/bicycle-lei/demo.git"
这样之后就可以直接使用origin来代替 git push 后面写的地址了
"git push origin master"
还可以进一步简化
在push时加上 -u参数。"git push -u origin master" 下次就可以写git push origin