Git的常用命令

Git的复制粘贴快捷键

Ctrl+Insert&Shift+Insert

创建版本库(仓库)

  1. 创建本地文件夹

    $ mkdir floder

    floder即为文件夹名称,自己定义即可

  2. 定义文件夹为git可管理

    $ git init

    定义后,这个文件夹就成为版本库(仓库)

提交文件到版本库

  1. 将工作区(即是floder)里的文件提交到暂存区

    $ git add file

    file为要提交的文件名称,后缀名要加上,后文同理

  2. 将暂存区里的文件提交到仓库(master分支)

    $ git commit -m "XXXXX"

    -m后面双引号内容即这次提交的说明,后文同理

修改工作区的文件后

  • 查看当前仓库状态(将仓库与工作区进行对比)
    • $ git diff file
  • 查看文件修改了什么
    • $ git diff file
  • 把仓库里的当前版本文件和工作区的文件比较
    • $ git diff HEAD --file

如果文件没错误,提交到仓库即可

撤销修改

  • 丢弃工作区的修改

    • $ git checkout -- file

    回到上一次提交后的版本

  • 撤回已经提交到暂存区的修改

    • $ git reset HEAD file

    把文件从暂存区放回工作区

  • 撤回已经提交到版本库的修改

    • $ git reset --hard HEAD^

    HEAD即为当前版本,HEAD^上一个版本,以此类推

    • 如果想回溯到某一精确版本

      1. $ git log

        可查看各个版本的commit_id记录

      2. $ git reset --hard commit-id

        回溯到特定版本

    • 查看命令历史

      $ git relog

删除文件

  • 删除特定文件

    • $ rm file

    删除后要进行提交步骤

  • 误删文件

    • $ git checkout -- file

    注意:虽然被删除文件会撤回,但是最近一次提交后你修改的内容会丢失

添加到远程库

  • 关联远程库

    $ git remote add origin git@github.com:GitHub_id/floder.git

    GitHub_id为你GitHub上的ID名字,floder为GitHub上的名字和本地仓库的名字,两者名字要一样

  • 本地内容推送到远程库

    $ git push -u origin maste

    把master分支推送到远程库,因为是第一次所以才有-u,只要$ git push origin maste即可

克隆远程库

$ git clone git@github.com:GitHub_id/floder.git

克隆后会在本地创建一个名为floder的文件夹

分支管理

  • 创建分支

    $ git checkout -b branch-name

    创建一个分支,并且切换到该分支,名字为branch-name,自定

    等同于:

    $ git branch branch-name

    $ git checkout branch-name

  • 切换分支

    $ git checkout branch-name

  • 合并分支

    $ git merge branch-name

    将分支的工作成果合并到master分支上

    分支上提交的文件,也会合并进去

    如果分支合并时出现冲突,先手动解决冲突,然后提交,最后合并

    如果想看合并信息,$git log --graph可以看到合并图

    $ git merge --no-ff -m "XXXX" branch-name

    没有进行Fast forward模式的分支合并,会留有commit描述

  • 删除分支

    $ git branch -d branch-name

    删除后可以$git branch查看分支信息,是否删除

  • 推送分支到远程库

    $ git push origin branch-name

    • 如果推送失败

    $ git pull

    抓取远程的新提交,现在本地进行合并/解决冲突,再进行推送

    如果显示“no tracking information”,则进行关联

  • 本地创建和远程分支对应的分支

    $ git checkout -b branch-name origin/branch-name

  • 建立本地分支和远程分支的关联

    $ git branch --set-upstream branch-name origin/branch-name

保护当前工作区

  • 保存当前工作区内容

    $ git stash

    可用$ git status查看当前工作区

    $ git stash list查看保存的工作区信息清单

  • 处理完后,恢复工作区内容

    • $ git stash apply

    只是代表恢复工作区内容,并没有删除之前保存的工作区信息

    $ git stash drop为删除命令

    • $ git stash pop

    恢复之前的工作区内容,并且删除之前保存的工作区信息

    • $ git stash apply stash@{X}

    恢复信息ID为X的工作区,ID可以用$ git stash list查看

管理标签

  • 创建标签

    $ git tag tag-name commit_id

    tag-name 为标签名字,自定

  • 查看标签信息

    $ git show tag-name

  • 创建带说明的标签

    $ git tag -a tag-name -m "XXXXX" commit_id

    -a指定标签名,-m指定说明

  • 删除标签

    $ git tag -d tag-name

  • 推送标签到远程库

    $ git push origin tag-name

    如果要一次性,推送所有标签$ git push origin --tags

  • 删除远程标签

    1. 删除本地标签

      $ git tag -d tag-name

    2. 删除远程标签

      $ git push origin :refs/tags/tag-name

      登录GitHub可查看是否删除

推送存在忽略文件的仓库

  1. 创建”.gitignore”文件
  2. 文件里面添加要被忽略的推送的文件名,例如:1.txt
  3. 提交文件到仓库

$ git add -f file 强制添加文件到仓库

$ git check-ignore -v file 检查.gitignore文件规则是否与file文件冲突

部分常用命令

  • 打开文件夹

$cd folder

  • 输出文件信息(个人感觉类似于printf)

$cat file

  • 显示当前所在目录

$pwd

  • 查看远程库的信息

$git remote

参考:http://www.liaoxuefeng.com

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值