git命令集合

  • 安装完成git之后要配置一些基本的信息

    git config --global user.name "Your Name"

    git config --global user.email "email@example.com"

    (其中的"Your Name"和"email@example.com"都要换成你自己个人的信息)

  • 创建一个空的本地仓库

    git init

  • 将文件从工作区添加到暂存区

    git add filename

    (filename是指你所要添加的文件名,若想添加全部修改的文件,则可以将直接执行"git add .",或者某一命令下的修改过的文件则执行"git add /path/.",path是文件夹名)  

  • 将文件从暂存区提交到本地仓库

    git commit -m "note"

    (note是你提交时的备注,以让自己及其他人知道提交的大概内容)

  •  回退版本

    git reset --hard HEAD^

    (这个是回退到上一个版本)

    git reset --hard HEAD~n

    (n是一个整数,指要往前回退n个版本)

    git reset --hard id

    (id是某一个版本号的前几位,直接跳到对应的版本)

  • 查看历史记录

    git log

    (查看提交历史,以便确定要回退到哪个版本)

    git reflog

    (查看命令历史,以便确定要回到未来的哪个版本)

  • 撤销工作区的修改

    git checkout -- filename

    (filename是想要撤销修改的文件名)

  • 从版本库中删除文件

    git rm filename

    (filename是想要删除的文件名)

  • 删除远程库文件保留本地

    git rm -r --cached filename

  • 本地库与远程库之间的操作

    ssh-keygen -t rsa -C "youremail@example.com"

    (在本地创建SSH Key,"youremail@example.com"要换成你自己的邮箱账号,然后一直回车即可,接着在用户主目录下找到.ssh目录,里面的id_rsa是私钥,id_rsa.pub是公钥,一般还需要在远程仓库中添加公钥)

    git clone originname git@server-name:path/repo-name.git

    (从远程库克隆,originname是远程库在本地所起的名字,git@server-name:path/repo-name.git是你远程库的链接)

    git remote add originname git@server-name:path/repo-name.git

    (关联远程库,originname是你给该远程库在本地所起的名字,git@server-name:path/repo-name.git是你远程库的链接)

    git push originname branchname

    (推送本地库的内容到远程库,originname是远程库的名字,branchname是所要推送的远程库分支)

    git pull originname branchname

    (从远程仓库获取最新代码合并到本地库的当前分支,originname是远程库的名字,remotebranchname是所要获取的远程库分支)

    git pull originname remotebranchname:localbranchname

    (从远程仓库获取最新代码合并到本地库的当前分支,originname是远程库的名字,remotebranchname是所要获取的远程库分支,localbranchname是本地新建的分支名)

    git remote update

    git fetch

    <-- 以上两句等价于 -->

    git fetch --all && git fetch -t

    (更新远程仓库中所有的分支且合并到本地)

  • 分支管理

    git checkout -b newbranchname

    (基于当前分支创建一个新分支,newbranchname是本地新建的分支名)

    git checkout -b newbranchname originname/branchname

    (基于远程跟踪分支创建本地分支,newbranchname是本地新建的分支名,originname是远程名,branchname是远程上已有的分支名)

    git branch

    (查看本地库的所有分支)

    git branch -r

    (查看远程库的所有分支)

    git checkout branchname

    (切换分支,branchname是所要切换到的分支名) 

    git merge branchname

    (将branchname分支合并到当前分支,branchname是分支名)

    git branch -d branchname

    (删除本地分支,branchname是分支名,若所要删除分支中的内容未合并且要丢弃,则将“-d”替换为“-D”即可)

    git push origin :branchname

    (删除远程分支,branchname是远程分支名)

  • 暂存当前分支正在进行的工作,且退回到上一个commit版本,结束紧急工作后重新取回暂存的工作内容

    git stash

    (暂存修改但未commit的代码)

    git stash list

    (将当前的Git栈信息打印出来)

    git stash apply stash@{v}

    (v为对应版本号,将该版本号的工作内容取出来,但是恢复后stash的内容并没有被删除掉,需要用git stash apply drop stash@{v}命令进一步删除)

    git stash pop

    (将Git栈所有版本的工作内容全部取出来,恢复后stash中的内容也被清空)

    git stash clear

    (将stash中的内容全部丢弃)

posted @ 2016-02-01 12:04  Billy_Sherry  阅读(130)  评论(0编辑  收藏  举报