美文网首页
git 基本操作

git 基本操作

作者: hepan | 来源:发表于2014-12-17 11:26 被阅读0次

    常用命令


    基本命令

    git init 把这个目录变成Git可以管理的仓库

    git add xxx 将xxx添加到工作区

    git commit -m "xxxx" 将已经add到工作区中的提交到stage(暂存)区

    git status 查看本地、工作区、stage中的文件状态

    git log 查看git 提交日志

    git diff xxx 比较xxx在工作区或者stage中最后一次修改于现在文件的不同

    git log --pretty=oneline 简单的日志信息

    git reset --hard HEAD^ 回到上一个版本,HEAD^^上上一个版本,回到上100个版本HEAD~100

    git reset --hard xxxxx 回到xxxxx版本 xxxx是log前面的版本号

    git checkout -- xxxx.txt 把xxxx.txt在工作区的全部修改都撤销。
    这里有两种情况:
    一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;
    一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。
    总之,就是让这个文件回到最近一次git commit或git add时的状态。

    git rm xxxx.txt 删除xxxx.txt文件后需要在git上也运行rm命令进行删除


    远程仓库

    git remote add origin git@github.com:michaelliao/learngit.git 创建于远程仓库关联 (在github创建仓库后会有提示前面的url可能不准)

    git push -u origin master 推送到远程仓库中

    git clone https://github.com/hepan/gitskills.git 从远程仓库复制

    git remote 查看远程库信息

    git remote -v 显示可以抓取和推送的origin的地址,如果没有推送权限就看不见push的地址

    git push origin dev 将dev分支提交到origin中

    git checkout -b branch-name origin/branch-name 在本地创建和远程分支对应的分支

    git branch --set-upstream branch-name origin/branch-name 建立本地分支和远程分支的关联

    git pull 从远程抓取分支,如果有冲突先要处理冲突


    分支

    git checkout -b dev 创建dev分支并切换到dev分支
    相当于如下两条命令
    $ git branch dev
    $ git checkout dev

    git branch 查看分支

    git branch -d dev 删除dev分支

    git log --graph --pretty=oneline --abbrev-commit 图形的方式显示提交

    git merge --no-ff -m "merge with no-ff" dev no-ff模式合并分支详解点这里,合并时会创建一个新的commit


    stash命令

    git stash 将工作区暂时保存

    git stash list 查看暂存工作区内容

    git stash apply 回复工作区

    git stash drop 将暂存的内容删除

    git stash pop 回复工作区并删除内容

    tag命令

    git tag v1.0将当前commit的最新版本打个标签v1.0

    git tag xxxx v0.9将xxxx打个标签v0.9

    git show v0.9 显示tar v0.9的内容

    git tag -a <tagname> -m "blablabla..."可以指定标签信息;

    git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;

    git tag -d v0.1 删除v0.1版本

    git push origin v1.0 将v1.0推到远程

    git push origin --tags 将未push的tags全部提交到远程

    git push origin :refs/tags/v0.9 从远程删除v0.9版本

    alias

    ci = commit -a -v
    throw = reset --hard HEAD
    throwh = reset --hard HEAD^
    

    相关文章

      网友评论

          本文标题:git 基本操作

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