githup的常用命令

玩转本地

初步添加使用:
  • 初始化一个Git仓库,使用git init命令

  • 添加文件到Git仓库,分两步:
    第一步,使用命令git add ,注意,可反复多次使用,添加多个文件;
    第二步,使用命令git commit,完成。(注意,只会提交add了之后的修改)

查看git状态:
  • 要随时掌握工作区的状态,使用git status命令。
  • 如果git status告诉你有文件被修改过,用git diff可以查看修改内容
  • git gui :调出图形编辑页面
查看历史记录:
  • 历史记录,在Git中,我们用git log命令查看:

  • 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:

  • Git提供了一个命令git reflog用来记录你的每一次命令:

  • 调出历史记录的图形界面: gitk –all

回退到历史版本中
  • 回退到上一个版本:
    git reset –hard HEAD^

  • 回退到上上一个版本:
    git reset –hard HEAD^^

  • 回退前100个版本:
    git reset –hard HEAD~100

  • 重置到某个版本:(后面的是提交的log号,使用 git log查看)
    git reset –hard 3628164

撤销你当前的修改:

git checkout其实是用版本库里的版本替换工作区的版本,无论工作区是修改还是删除,都可以“一键还原”。
命令git checkout – readme.txt意思就是,把readme.txt文件在工作区的修改全部撤销,这里有两种情况:

一种是readme.txt自修改后还没有被放到暂存区,现在,撤销修改就回到和版本库一模一样的状态;

一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存区后的状态。

总之,就是让这个文件回到最近一次git commit或git add时的状态。

git reset HEAD file可以把暂存区的修改撤销掉(unstage),重新放回工作区:

撤销步骤:

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout – file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作

删除仓库中的文件:
git rm用于删除一个文件

使用远程

  • 将远程的代码获取到本地仓库
    git fetch

  • 将自己的commit放到fetch到的提交记录的最上面(这样历史记录就是一条直线,便于查看你的History)
    git rebase origin master:

  • 将远程仓库的代码拉取到本地
    git pull

  • 将本地仓库的代码推到远程仓库
    git push origin master

stash

  • 缓存没有提交的文件(只有当当前的内容还未改完的时候,需要改之前一个版本的bug时,才需要用到stash)
    git stash

  • 继续原来的工作
    git stash pop,

  • 恢复版本号为stash@{1}的缓存
    git stash apply stash@{1}

  • git show stash@{0} # see the last stash
  • git stash list # list stashed changes in this git

tag

  • 添加标签:
    git tag -a 0.64.alpha -m “0.64.alpha”
  • 将代码推到标签处:
    git push origin 0.64.alpha:0.64.alpha

  • 给某次历史提交打上标签:
    git tag -a 0.64.beta -m “0.64.beta ” 47511d966a2f830576f8e3d1fb622322c226a1c4

  • 删除本地标签:
    git tag -d 0.64.beta

  • 删除标签(在Git v1.7.0 之后)
    git push origin –delete tag 0.64.beta
    删除远程标签可以把源标签为空:
    git push origin :refs/tags/标签名

branch 分支

  • 查找自己的分支
    git branch
  • 创建分支
    git branch branchName

  • 切换当前工作环境到某个分支
    git checkout branchName

  • 合并分支,将branchName合并到当前的分支
    git merge branchName
    (如果合并的时候出现了冲突,可以使用 git diff 查看冲突的地方,将冲突解决完后,再次commit 就可以了;你也可以直接commit,这时候git会告诉你冲突的文件,并提示commit失败,只有将冲突解决完成后,commit 才能成功)

  • 撤销合并(合并后的代码还未提交的情况)
    git reset –hard HEAD

-合并后的代码已经commit了,还是想撤销
git reset –hard ORIG_HEAD(这条命令很危险,如果你把一个已经被另一个分支合并的分支给删了,那么以后再合并相关分支时会出错.???这句话没看懂TODO)

  • 删除已经合并了的分支
    git branch -d branchName

  • 强制删除分支,不管这个分支有没有被合并
    git branch -D branchName

常见的git命令

git init
git的初始化
git add .
将代码加入到本地仓库中
git status
查看当前本地仓库的状态
git diff
查看区别
git reset
重置,可以取消add命令
git checkout
撤销修改,在还没有执行add命令前可以将撤销对代码的修改
git commit -m “decail of commit”
提交,提交到本地仓库
git push origin master
将本地仓库的代码提交到远程仓库中
git remote add origin https://github.com/bigthing33/StudyDemo.git
本地仓库和一个远程仓库建立连接
git fetch origin master
从远程仓库中更新代码,代码会合并到一个叫origin/master的分支上
git merge origin/master
将origin/master的分支合并到当前分支
git pull origin master
等于上面两个语句的合并,直接将远程仓库合并到本地仓库
git branch -a
查看分支,带*表示当前所在分支
git branch version1.0
创建一个分支
git checkout version1.0
切换到一个分支
git merge version1.0
合并指定的分支到当前分支
git branch -D version1.0
删除一个分支

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值