Git命令集

查看用户名和邮箱地址:

  • $ git config user.name
  • $ git config user.email

修改用户名和邮箱地址:

  • $ git config --global user.name “username”
  • $ git config --global user.email “email”
$  mkdir learngit     新建一个learngit 文件目录  在你安装git文件夹内
$ cd learngit	//跳转到learngit目录中
$ pwd  		//显示当前目录
$ git init 	//将这个目录编程Git可以管理的仓库
编写一个 readme.text
将这个文件添加到Git仓库中去
第一步:$ git add readme.txt
第二步:$ git commit -m "wrote a readme file"
//注:    -m 后面输入的是本次提交的说明   说明此次改动都做了什么

$ git status命令可以让我们时刻掌握仓库当前的状态
$ git diff   查看当前的文件被修改了什么
$ git log  查看输出Git的上传信息 从下向上   
$ git log --pretty=online 格式化LOG
$ git reflog 

查看命令历史,以便确定回到未来的那个版本

版本回退和回退到前100个版本
$ git reset --hard HEAD^
$ git reset --hard HEAD~100 //退到前100个版本
$ git reset --hard 3628164
//可以查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt
//将readme.txt文件在工作区的修改全部撤销
git checkout -- readme.txt
//此方法可以在add到了暂存区的修改回退到工作区
git reset HEAD readme.txt
$ rm test.txt   删除文件

关于推送到GitHub和克隆下来

//错误提示:fatal: remote origin already exists. 输入以下命令然后重新remote就可以了
$ git remote rm origin

$ git remote add origin git@github.com:EverZc/first.git

//第一次推送的时候需要使用-u 为了使得本地和网络的关联起来 方便以后的推拉
$ git push -u origin master 

//本地提交以后可通过以下命令进行推送
$ git push origin master

git@github.com:EverZc/first.git
这里的这个网址是在SSH秘钥获取之后GitHub提供的

//克隆下来
git clone git@github.com:EverZc/New.git

创建和合并分支

//创建并切换分支
$ git checkout -b dev

// 同以上代码一模一样
$ git branch dev     //创建分支
$ git checkout dev	  //切换分支

//查看当前分支
$ git branch

//合并某分支到当前分支
$ git merge dev

//删除分支
$ git branch -d dev

//查看分支情况
$ git log --graph --pretty=oneline --abbrev-commit

//用这种方法合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
$ git merge --no-ff -m "merge with no-ff" dev

BUG分支的操作


//隐藏当前工作的分支内容  就是说把现在的工作现场给隐藏起来然后等以后工作了再恢复出来
$ git stash

//查看隐藏的列表
$ git stash list

//恢复隐藏的工作区
$git stash apply

//删除隐藏区的工作内容
$git stash drop

//隐藏并删除隐藏区的内容
$git stash pop

如果新添加了一个功能 在合并之前可以通过$git branch -D <name>强行删除这个功能~!

多人协作

//查看远程库的信息
$ git remote

//查看远程库的详细信息
$ git remote -v

//向远程库推送分支
$ git push origin master

//向远程库推送其他分支
$ git push origin dev 

提交分支的时候出现分支冲突解决办法~

//创建远程dev 并且在上面开发
$ git checkout -b dev origin/dev

//提交以后可以推送上去
$ git commit -m "提交的内容"
$ git push origin dev(如果推送失败 先用git pull拉取远程的新提交)

//如果此时你提交了相同的文件会显示提交失败 应该从origin/dev抓下来然后本地合并 解决冲突再推送
$ git pull
//如果拉取也失败了 原因是没有指定本地的dev分支与远程origin/dev分支的链接
$ git branch --set-upstream dev origin/dev
//设置好以后再 拉取pull
$ git pull

创建标签

//在需要标签的分支上直接输入以下命令
$ git tag v1.0

//想对历史的commit id上打标签
$ git tag v0.9 6224937 (id号)

//查看标签
$ git tag

//查看标签下的详细信息
$ git show <tagname>

//创建带有说明的标签,用-a指定标签名,-m指定说明文字
$ git tag -a v0.1 -m "version 0.1 released" 3628164

//-s 通过私钥签名一个标签
$ git tag -s v0.2 -m "signed version 0.2 released" fec145a

操作标签:

//删除标签
$ git tag -d v0.1

//推送标签到远程
$ git push origin v1.0

//一次性推送到远程的本地标签
$ git push origin --tags

//如果已经推送到远程想删除的话 先从本地删除
//然后从远程删除 删除命令也是push
$ git tag -d v0.9
$ git push origin :refs/tags/v0.9

配置别名

配置文件放在 .git/config文件中

//将st 替换成 status
$ git config --global alias.st status

20181205新增

相对引用

git checkout  master`  向后退一步
git checkout master^4 向后退4步

git branch -f master HEAD~3

上面的命令会将 master 分支强制指向 HEAD 的第 3 级父提交。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值