git的基本使用

没有概念与介绍,就是用。这个浮躁的社会快速实现吧。

初始化

  • 本地初始化
git init
  • 服务端初始化
git init --bare
  • clone 一个库到本地也行随意玩耍
git clone git@192.168.56.101:/home/data/gittest.git

添加内容

git add readme.txt   //平时咱就用这个
git add .                   //会根据.gitignore做过滤
git add *                  //忽略.gitignore把任何文件都加入   加上了commit好像也没提交呀
git status                 //状态

查看提交的修改文件

git log --name-status    //每次修改的文件列表, 显示状态
git show commitid        //显示某个 commitid(就是版本的hash  `git log` 查看) 改变的具体内容

提交文件到本地

git commit -m "我就是要在这写中文"    //这里貌似是有规范的
git status                                               //状态

eq:
git commit -m 'Issue #[issue number] by [username]: [Short summary of the change].'

查看工作区和版本库最新版本的区别

git diff HEAD -- readme.txt

撤销修改(后悔药)

git checkout -- readme.txt    //回到最后一次commit 或 add时
git reset HEAD readme.txt  //只做了add 没有commit 这时相当于撤销add操作

删除文件

git rm readme.txt       //删除操作了记得commit

//删除想找回
git reflog    //查看操作记录
git reset --hard 3es35   //恢复

版本查看并回退

git log    //查看提交日志   --pretty=oneline 输出简单易懂

git reset --hard HEAD^   //回退上次  HEAD^^ 上上次
git reset --hard 1094a    //准确可靠

分支

  • 查看分支
git branch   //*就是你当前分支
git log --graph  //分支合并图
  • 创建分支
git branch dev      //创建了dev分支 但是并没有切换
git checkout dev  //切换分支 
git branch            //查看分支
  • 删除分支
git branch -d dev   //删除当前分支
  • 合并分支
git merge --no-ff dev   //当前分支master 把dev分支合并到master分支 --no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并
git commit -m '分支合并啦'
git cherry-pick 6e78de  //复制某个提交到其分支上   当前dev  master上的issue 6e78de   复制到了dev

中断隐藏与恢复

git add .  //没有做完的活
git stash   //隐藏啦
git status  //干净

忙。。。。。。

git stash list  //查看之前隐藏

git stash apply stash@{0}  //恢复但是隐藏列表还在
git stash drop stash@{0}   //删除

git stash pop  //以上两个同样效果 恢复并删除

远程操作

git remote add origin git@192.168.56.101:/home/data/gittest.git  //添加远程仓库

git push -u origin master  //推送到远程master分支  -u 本地master与远程master 建立链接 第一次用以后就不用加

git remote -v  //不显示push代表无权限推送

git push origin dev  // dev/master  推送到远程上的分支名称

git pull  //先更新  然后再push

git branch --set-upstream-to dev origin/dev  //为本地dev分支与远程dev分支建立链接,不然pull报错

git push origin dev  //推送到指定远程分支

标签管理

  • 查看分支
git tag   //查看标签
git show v1.0   //查看标签对应修改
  • 创建标签
git tag v1.0   //当前commit添加标签

git tag v1.0  6e78de  //指定commit添加标签

git tag -a v1.0  -m "解释一下这个标签吧"  6e78de   //给标签带上说明吧
  • 删除标签
git tag -d v1.0  
  • 远程标签操作
git push origin v1.0   //推送到远程 

//远程删除
git tag -d v1.0   //本地删除
git push origin :refs/tags/v1.0  //远程删除
原文地址:https://www.cnblogs.com/fuqian/p/11437549.html