git使用指南

147 阅读3分钟

下面小编牛牛给大家介绍一下自己学习工作中用到的一些git常用命令,众所周知,git有三个工作状态区:工作区,暂存区,历史区

下载github,电脑和远程github仓库建立链接

SSH协议

一个公钥只能配置一个账户,一个账户可以关联多个公钥,使用 SSH 协议来访问 Git 仓库,不需要每次链接都输入账号和密码。ssh公钥设置

基本配置如下(以mac为例子):

  • 获取你的ssh秘药

    ssh-keygen -t rsa -C <your_email@example.com>你的邮箱

  • github配置ssh,文件中快速找到.ssh文件

    open ~/.ssh

  • 配置第二个ssh

    ssh-keygen -t rsa -C "your_secondemail@email.com" -f ~/.ssh/second_rsa

常用git命令

日常工作中,那我们现在的开发模式来讲述的话,日常master分支,开发分支在master下面的其他分支,例如:dev项目分支,如果几个人一起开发同一个项目,都在dev分支

  • git add a.html/-A/.

将文件添加到暂存区

  • git commit -m '提交注释'

将文件添加到历史区

  • git pull origin dev

从远程仓库dev拉取最新代码

  • git push origin dev

修改内容推送到远程仓库dev

  • git log / git log --pretty=oneline

查询提交commit版本,命令行退出编辑,点击esc,再点击:再之后wq ,回车即可退出;

  • git reset --hard HEAD^/ git reset --hard 1094a(版本号)
  • git reflog 针对reset回退,需要再回到reset之前
  • git checkout -- 文件

清掉工作区的内容,针对还没有add的文件,丢掉工作区的代码

  • git reset HEAD 文件

add到暂存区使用该命令撤回到历史区

从远程仓库删除托管在git上面的文件,比如.git或者node_modules文件等

如果在.gitignore文件少些了些忽略文件并且不小心把代码提交到了远程仓库,每次提交都有一大堆文件,如何解决此问题,步骤如下:

  • 新加ignore文件 node_modules/
  • 然后删除远程分支上面的多余文件 git rm -r --cached node_modules
  • 再然后将本地修改的文件提交到远程仓库中 add+commit+push

分支管理

  • 新建并切换分支test git checkout -b test
  • 查看当前分支 本地/远程 git branch/git branch -a
  • 分支合并 git merge test

切记:在test分支切换到别的分支,进行分支合并,git log查询不到合并细节,fast-forward合并

  • 分支合并(带历史记录版本)

    git merge test --no-ff -m 'merge with no-ff' test

  • 删除分支: 本地/远程 git branch -D test / git push origin --delete test

切记:在test分支切换到别的分支才可以删除分支

本地远程分支多人协作

  • 新建分支并和远程连接 git checkout -b dev origin/dev
  • 新建分支并和远程连接 git branch --set-upstream dev origin/dev

Git push —set-upstream origin dev

git版本回退

遵循三要素,历史回工作前,暂存回工作后,工作后回工作前