您的位置:首页 > 运维架构 > Linux

Git常用命令介绍

2016-06-19 23:05 513 查看
Git分布式版本控制系统,非常流弊的一个版本管理系统,此博文介绍下git常用的命令,适用于不会Git版本控制的菜鸟,对于维护Git服务器的大牛来说,跪求指教,其实我也是菜鸟。
Git是被压迫出来的产物,因为BitMover公司收回了版本控制系统BitKeeper对linux社区免费使用的权限,而linux的开发迫切需要一个好的分布式版本控制系统,我们心高气傲的linux之父linus不愿意向BitMover低头付费,一生气就花了不到一个月的时间用自己的C写出了现在最流行的分布式版本控制系统git,在这里非常感谢BitMover公司的推进,有了现在非常好用的Git,不的不说,linus还是很流弊的。

1. 在Git中设置你的名字和email这些是提交commit的时候的签名
git config --global user.name "yatian"
git config --global user.email "yatian@126.com"

2. 创建版本库。
# 首先找一个合适的地方创建一个空文件夹
mkdir learngit
# 通过git命令把这个目录变成Git可以管理的仓库
git init
注意:在执行完git init这个命令后,会提示创建了一个空的仓库,并且有一个隐藏的文件'.git',这个文件是跟踪管理版本库的,没事千万不要手动修改这个文件,容易将版本库搞坏掉。
# 编写一个文件readme.txt一定要放到 learngit 的目录下,否则在这个仓库中是找不到的
git add readme.txt
# 告诉git把文件提交到仓库中
git commit -m "wrote a readme file"
-m 在这里是解释本次操作的, 方便以后查找历史记录
# 查看当前git有没有修改过的文件及新上传的文件
git status
# 查看文件是那些为有过修改及详细查看修改的文件
git diff readme.txt
# 将已经存在的文件,修改后提交方式
git commit -a -m "lanyulei"
# 查询git所有修改记录的命令
git log [--pretty=oneline]
单独执行git log输入的内容可能过多,加上后面的参数可以简要的输入内容。"[]"代表可有可无
# 回退版本,首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164...882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
回退到上一个版本中
git reset --hard HEAD^
想要回去的话, 也是可以的,但是前提是,还能记得之前的commit id,Git总是有后悔要可以吃的,可以使用git reflog来查看你的历史操作
git reflog
git reset --hard 123456
# 工作区版本和版本库中的最新版本比较
git diff HEAD -- readme.txt
# 丢弃工作区的修改,就是想刚刚修改的东西,还原
git checkout -- readme.txt
# 当你想将暂存区的修改回退的时候,使用一下命令
git reset HEAD file
# 当你删除工作去文件的时候,git status就会提示你工作区和版本区的版本不一致,一是确实要从版本库中删除该文件
git rm file
git commit -m "delete file"
二是,你误删除了工作区的文件,想要恢复,那么撤销工作区域的修改就可以了
git checkout -- file

3. 远程仓库
# 自行创建github网站的账号,创建一个共有的版本库
# 要关联一个远程代码库
git remote add origin git@github.com:yatian/test.git
origin 远程库的名字,是Git中的默认叫法,可以是别的
# 将代码推送至远程库
git push [--force] -u origin master
注意:第二次提交的时候,直接提交就可以
git push origin master
# 克隆代码
git clone git@github.com:yatian/gitskills.git

4. 分支管理
# 创建一个新的分支,并且切换到这个新的分支
git checkout -b dev
git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
git branch dev
git checkout dev
# 查看当前所在分支
git branch
# 合并某分支到当前分支
git merge dev
# 删除分支
git branch -d dev
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息