美文网首页
git学习总结

git学习总结

作者: Annzmy95 | 来源:发表于2017-02-23 17:01 被阅读0次
    • git status:掌握工作时区状态
    • git diff:查看修改的内容
    • git log:查看提交历史
    • git reflog:查看命令历史
    • git branch:查看分支
    • HEAD指向的版本是当前版本

    根据习惯缩写配置别名
    git config --global alias.st status
    st-----status//状态
    co----checkout
    ct-----commit//提交
    br-----branch//分支
    unstage-----reset HEAD//把暂存区的修改撤销掉
    last-----log -1//最后一次提交信息
    lg-----"log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"//丧心病狂式查看历史记录

    • 把文件添加到仓库中总共分两步
    //.1.从工作区添加不同文件到stage中
    git add file  
    //2.一次可将多个文件从stage提交到master
    git commit -m "introductions"  
    
    • 版本回退
    //1.上一个版本
    git reset --hard HEAD^ 
    //2.通过commit id 控制回退,
    //即使窗口关闭,可以通过git reflog查看命令历史,继而查看commit id
    git reset --hard commit id
    
    • 撤销修改
    //1.工作区的文件修改,丢弃
    git checkout --file
    //2.添加到stage区的文件修改,丢弃
    //①从stage撤回到工作区(unstage)
    git reset HEAD file   
    //②在工作区撤销修改
    git checkout -- file
    //3.未提交到远程库的,使用版本回退
    git reset --hard commit id
    
    • 删除文件
    //1.工作区中删除了文件
    rm file
    //2.版本库也想删除
    //①从版本库删除--------与git add file对应
    git rm file  
    //②提交
    git commit -m "删除了XXX"  
    
    • 误删文件
    //撤销删除  
    git checkout --file
    //其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
    
    • 推送到远程库
    //要关联一个远程库,使用命令
    git remote add origin git@github:username/repo-name.git
    //关联后,使用命令,第一次推送master分支的所有内容;
    git push -u origin master
    //此后,每次本地提交后,只要有必要,就可以使用命令推送最新修改;
    git push origin master
    
    • 分支管理
      创建分支
      git branch dev
      切换分支
      git checkout branchName
      创建分支dev并切换为当前分支
      git checkout -b dev
      合并分支
      git merge dev //此时已切换至主分支
      不快速合并分支,生成一个commit
      git merge --no-ff -m "introductions" dev
      删除分支
      git branch -d dev
      解决冲突
      无法快速合并,在工作区修改之后,add,commit
      保护工作现场
      git stash
      查看工作现场
      git stash list
      恢复现场不删除stash
      git stash apply
      恢复现场并删除
      git stash pop
      恢复某个工作现场
      git stash apply stash@{0}
      未合并的分支强制删除
      git branch -D dev
      查看远程库信息
      git remote -v
      推送分支
      git push origin branchName
      抓取远程库分支
      git checkout -b dev origin/dev

    • 克隆
      git clone git@github:username/repo-name.git

    • 获取远程库某个分支的更新,再与本地的指定分支合并

    git pull <远程主机名> <远程分支名>:<本地分支名>
    //取回origin主机的next分支,与本地的master分支合并
    git pull origin next:master
    //远程分支是与当前分支合并,则冒号后面的部分可以省略
    git pull origin next
    //上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再做git merge。
    $ git fetch origin
    $ git merge origin/next
    
    • 从远程库获取最新版到本地
    从远程获取最新版本到本地
    //使用如下命令可以在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支
     git fetch origin master:temp
    //比较本地仓库与下载的temp分支
    git diff temp
    //合并temp分支到本地的master分支
    git merge temp
    //删除temp分支
    git branch -d temp
    
    • 打标签
    //1.默认为HEAD打标签
    git tag tagname
    //2.指定commitID
    git tag tagname commitID
    //变迁按tag数字大小排序,不按创建时间
    //3.带说明文字的标签
    git tag -a tagname -m "introductions"
    //4.查看标签内容
    git show tagname
    //5.可以指定标签信息
    git tag -a tagname -m "blablabla..."
    //6.可以用PGP签名标签
    git tag -s tagname -m "blablabla..."
    //7.查看所有标签。
    git tag
    //8.推送标签到远程
    git push origin tagname
    git push origin --tags
    //9.删除标签
    git tag -d tagname
    //10删除一个远程标签
    git push origin :refs/tags/tagname
    

    相关文章

      网友评论

          本文标题:git学习总结

          本文链接:https://www.haomeiwen.com/subject/oodmwttx.html