美文网首页
Git 命令

Git 命令

作者: 广锅锅 | 来源:发表于2017-07-13 15:01 被阅读9次

    配置全局 用户名、邮箱

    git config --global user.name "Your Name"
    git config --global user.email "email@example.com"
    

    创建仓库

    git init
    

    提交

    git add <file name>  // 把文件添加到暂存区
    git commit -m <"description"> // 把暂存区的所有内容添加到当前分支
    
    git diff <file name> // 查看指定文件被修改的具体内容
    

    查看

    git log    //查看版本记录
    git log --graph  // 可以查看分支合并图
    git log --pretty=oneline // 简化log输出
    
    git reflog //查看每一次命令
    
    git status //查看当前状态,修改、删除、添加、冲突
    

    回退版本

    git reset --hard HEAD^    // 回退上一个版本
    git reset --hard HEAD^    // 回退上上个版本
    git reset --hard HEAD~100    // 回退前100个版本
    git reset --hard <commit id>  // 回退/前进到指定版本
    

    撤销修改

    git checkout -- <file name> // 撤销指定文件的所有修改
    git reset HEAD <file name> // 撤销已提交到暂存区的文件
    

    删除文件

    git rm <file name>
    
    // 撤销删除:由于删除也被认为为修改,所以也可以使用撤销修改的命令来撤销删除
    git checkout -- <file name>
    git reset HEAD <file name>
    

    远程仓库

    以gitHub为例,账号名为Zhangguiguang,仓库名为gitTest

    把本地git仓库关联到远程仓库

    git remote add origin git@github.com:Zhangguiguang/gitTest.git
    

    把本地仓库所有内容推送到远程库

    git push -u origin master // 首次推送内容
    git push origin master    // 之后推送内容可以忽略 -u
    
    git push origin local_branch:remote_branch  // local_branch为本地存在的分支,remote_branch为远程分支,如果remote_branch不存在则会自动创建分支。
    

    从远程库克隆

    git clone git@github.com:Zhangguiguang/gitTest.git
    

    分支

    git branch //查看分支
    
    git branch <name> // 创建分支
    
    git branch -d <name> // 删除分支
    git branch -D <name> // 删除分支:强行删除,该分支有修改,但是没有被合并到master,需要使用强行删除命令
    
    git checkout <name> // 切换分支
    
    git checkout -b <name> // 创建+切换分支
    
    git merge <name> // 合并某分支到当前分支
    
    git merge --no-ff -m <"merge with no-ff"> <branch2> 把 branch2分支合并到当前分支,且当成一次commit
    
    

    存储工作现场

    git stash // 保存当前的工作进度,此时工作区是干净的,没有修改、没有commit
    
    git stash list // 查看已保存的工作现场列表
    
    git stash apply // 恢复最后一个工作现场
    git stash apply <index or stashName> // 恢复指定工作现场,可以指定下标、场景名
    
    git stash drop // 从stash list删除最后一个工作现场
    git stash drop <index or stashName> // 从stash list删除指定工作现场,可以指定下标、场景名
    
    git stash pop // 恢复最后一个工作现场并从stash list删除
    

    多人协作

    git remote // 查看远程库信息
    git remote -v // 查看详细信息
    
    git push origin <name> // 推送指定分支到远程库
    // 如果推送失败,先用git pull抓取远程的新提交,解决冲突再提交
    
    git pull // 将远程库的最新提交拉取下来
    
    git branch --set-upstream <dev> origin/<dev> // 将本地分支与远程分支链接起来
    

    标签

    git tag <name> // 对当前分支的HEAD打一个tag
    
    git tag <name> <commit id> // 在指定commit位置打一个tag
    
    git tag // 查看所有tag
    
    git show <tagname> // 查看指定tag的信息
    
    git tag -a <tagname> -m <tagdescription> <commit id> // 可用-a指定tag名, -m指定tag描述
    
    

    操作标签

    git tag -d <tagname> // 删除tag
    
    git push origin <tagname> // 把tag推送到远程库
    git push origin --tags // 一次性推送所有tag
    
    // 如果tag被推送到远程,需要删除需要两步
    git tag -d <tagname> // 删除本地tag
    git push origin :refs/tags/<tagname> // 删除远程tag
    
    

    相关文章

      网友评论

          本文标题:Git 命令

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