码迷,mamicode.com
首页 > 其他好文 > 详细

Git教程

时间:2019-07-02 10:54:06      阅读:89      评论:0      收藏:0      [点我收藏+]

标签:默认   ups   并且   push   head   local   one   合并   cal   

Git教程

Git常用命令

分支

Git鼓励大量使用分支:

  1. 查看分支:git branch
  2. 创建分支:git branch <name>
  3. 切换分支:git checkout <name>
  4. 创建+切换分支:git checkout -b <name>
  5. 合并某分支到当前分支:git merge <name>
  6. 删除分支:git branch -d <name>
  7. 查看远程库的信息,用  git remote git remote -v
  8. 当你的小伙伴从远程库clone时,默认情况下,你的小伙伴只能看到本地的master分支。不信可以用git branch命令看看:

     $ git branch
     * master
  9. 现在,你的小伙伴要在dev分支上开发,就必须创建远程origin的dev分支到本地,于是他用这个命令创建本地dev分支:

$ git checkout -b dev origin/dev

git diff 只检查我们的工作区和暂存区之间的差异

git diff --cached 检查暂存区和本地仓库之间的差异

git diff master origin/master 检查本地仓库和远程仓库之间的差异

撤销修改

  1. 已修改,未暂存,即文件在Working Area中

     git checkout .  或  git reset --hard  来进行撤销操作

    一对反义词 git add .的反义词是git checkout .。做完修改之后,如果你想向前走一步,让修改进入暂存区,就执行git add .,如果你想向后退一步,撤销刚才的修改,就执行git checkout .

  1. 已暂存,未提交,即文件在Staging Area中

    git reset
    git checkout .
    或者
    git reset --hard

git reset只是把修改退回到了git add .之前的状态,也就是说文件本身还处于已修改未暂存状态,你如果想退回未修改状态,还需要执行git checkout .。

或许你已经注意到了,以上两个步骤都可以用同一个命令git reset --hard来完成。是的,就是这个强大的命令,可以一步到位地把你的修改完全恢复到未修改的状态。

  1. 已提交,未推送,即文件在Local Repository中
    git reset --hard origin/master
  2. 已推送,即文件在Remote Repository中

很不幸,你的手实在是太快了,你既git add了,又git commit了,并且还git push了,这时你的代码已经进入远程仓库。如果你想恢复的话,还好,由于你的本地仓库和远程仓库是等价的,你只需要先恢复本地仓库,再强制push到远程仓库就好了

git reset --hard HEAD
git push -f
  1. Eclipse synchronize workspace
    比较本地工作区或暂存区或本地仓库的文件与远程库的区别
    在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致

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

Git教程

标签:默认   ups   并且   push   head   local   one   合并   cal   

原文地址:https://www.cnblogs.com/hoonick/p/11119013.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!