Git从零开始(三)

一、远程仓库管理

  1、将本地内容推送到远程库

  先关联远程库,执行命令: git remote add origin https://github.com/Hollydan/gitstore.git (仓库地址可以同git协议 git@github:Hollydan/gitstore.git

    origin指远程库的名字,可以自己起名;后面是远程服务器仓库地址(这里是我github库地址,Hollydan是github用户名,gitstore.是新建的远程库,根据自己实际情况填写)

    删除远程仓库 git remote rm origin

    查看远程分支 git remote

  然后将本地库的内容推送到远程库:git push -u origin master

    第一次推送时会提示是否信任远程服务器,输入yes回车就好了。以后提交时只需要命令 git push origin master 

  2、从远程库克隆到本地库

  现在远程库添加一个仓库,然后执行: git clone git@github.com:Hollydan/test.git 在本地就多了一个test文件夹。

  3、从远程拉取代码

  git pull origin develop develop

  拉取远程 develop 分支的代码到本地 develop 分支

    强制拉取并覆盖本地代码

    git fetch --all

    git reset --hard origin/master

    git pull

二、分支管理(默认是master分支)

  1、先创建分支并切换到新的分支。

    git branch dev

    git checkout dev

    上面两条命令也可以合并为一条:git checkout -b dev

    

    会看到提示,已经切换到了新分支dev

  2、查看分支

    git branch

    

    可看到有两个分支,而当前分支dev前面有个星号,从现在开始提交的所有文件都在dev分支上而不会改变之前master分支上的内容。

  3、切换回master,并将dev分支文件合并到master

    git checkout master

    git merge dev

    当两个分支改了同一个文件时,合并会发生冲突,这时应该先找到两次文件的不同,然后在合并。git log --graph 可以看到分支合并情况

    合并分支时,用普通模式,合并后的历史有分支, git merge --no-ff -m "merge with no-ff" dev 

  4、删除dev分支

    合并完之后就可以放心删除啦, git branch -d dev ,再git branch时就只能看到master一个分支啦。

    如果不想合并可强行删除, git branch -D dev

三、工作现场储藏及恢复

  1、储藏

    git stash  (可多次stash),git stash list 可查看储藏的工作现场。

  2、恢复并删除储藏

    git stash apply

    git stash drop

    上面两条命令可用一条代替: git stash pop 恢复的同时把stash删除

四、标签管理

  1、创建标签

    默认在当前版本创建标签: git tag v1.0 ,可用命令 git tag 查看标签

    如果给之前版本创建tag,则执行: git tag v0.8 6224937 (后面跟版本号)

    创建带注释的标签: git tag -a v1.0 -m "vision 1.0" 6224937 git show v1.0 可看到tag的详细信息

  2、删除本地标签

    git tag -d v1.0

  3、推送标签到远程

    git push origin v1.0 ,也可一次推送所有tag: git push origin --tags

  4、删除远程标签

    先删除本地 git tag -d v1.0 ,然后执行: git push :refs/tags/v1.0

    如果有多个stash,则用命令: git stash apply stash@{0} 

原文地址:https://www.cnblogs.com/rendd/p/7230845.html