目录
什么是git
git是一个开源的分布式版本控制系统工具,用于高效的管理大小项目代码
git 特点
* git是分布是的版本管理系统
* git更多使用在*nix下
* git更加安全,因为是分布式管理
* git可以衍生更多的工作模式
* 可以脱网操作,数据同步更快
集中式 : 代码集中管理,有一个中央服务器,每次更新都从中 央服务器下载最新内容
分布式 : 每个节点都保存完整的代码,没有中央服务器,节点 之间相互推送下载代码
git安装
sudo apt-get install git
配置工作环境
配置工具 : git config
配置级别
* 系统配置 操作系统中所有用户都可以使用
git config --system user.name xxx 配置用户名
/etc/gitconfig 配置文件
* 用户配置 使用用户所有项目都可使用
git config --global user.email xxx@xx.cn 配置email
~/.gitconfig 配置文件
* 配置当前项目仓库
git config core.editor vim 配置编译器
.git/config 配置文件
仓库操作
仓库 : 使用git生成的项目目录,可以通过git方便的进行操作。将需要使用git管理的项目代码放入目录即可管理
git init * 初始化仓库
git status * 查看当前工作分支状态
git add files * 将工作区内容同步到暂存区 (多个文件用空格隔开,可以添加普通文件和目录, * 表示所有文件)
git rm --cached manage.py * 从暂存区删除内容
git commit -m "提交项目代码" * 将暂存区内容提交仓库 (需要 -m 后写提交说明)
git log git log --pretty=oneline * 查看提交日志
git diff readme.txt * 查看工作区文件与仓库区别
git checkout manage.py * 恢复误删文件
git rm readme.txt * 从仓库删除文件
git mv manage.py static/ 操作后直接git commit即可确认更改
git reset --hard HEAD^ * 回到上一个版本 ,几个^表示上几个版本
git reset --hard 854ca76 * 回到指定的某个版本
git reflog * 查看所有commit信息
工作区操作
git checkout -- readme.txt * 放弃工作区修改
git stash * 创建临时保存工作区
git stash list * 查看保存的工作区
git stash apply stash@{0} * 应用哪个工作区
git stash drop stash@{0} 删除工作区
git stash clear ---》 全部清除
分支
git branch 查看当前分支 前面的 * 表示当前正在工作分支
git branch dev_Tom 创建分支
git checkout dev_Tom 切换分支
git checkout -b dev_Tom 创建并切换到
git merge dev_Tom 合并分支
git branch -d dev_Tom 删除分支 , 如果没有合并,则必须用-D删除
标签管理
git tag v1.0 打标签
git tag v0.9 commit_id
git tag 查看标签
git reset --hard v1.0 回复到某个标签版本
远程仓库
连接远程仓库
git remote add origin tarena@127.0.0.1:/home/tarena/testgit/project.git
删除远程主机
git remote rm origin
推送分支到远程
git push -u origin master
从远程克隆项目
git clone tarena@127.0.0.1:/home、tarena/testgit/project.git
从远程拉去最新代码
git pull