工作区域

在了解git指令之前熟悉他的工作区域是很有必要的,git操作实际上分为4个区域

  • 工作目录
  • 缓冲区
  • 资源区
  • 远程仓库

image.png


git指令

  • git clone 克隆远程项目
  • git remote Git要求每个远程主机都必须指定一个主机名,默认为orgin
    • git remote 可查看当前远程主机名
    • git remote add origin 远程仓库地址 —— 这样来连接远程仓库
    • … rm origin —— 删除远程主机
    • … rename —— 重命名远程主机
  • git fetch 该操作可以取到远程仓库的更新,默认更新所有分支,需特定更新分支就直接添加分支名——git fetch orgin master (这边默认已经远程主机已经连接实际仓库地址)
  • git branch 我们首先对分支需要有一个了解,通俗来讲就是我们将工程copy一份在对其进行操作最后在于之前分支合并,可以分工分块进行操作,当然分支的作用不只是这样。该命令查看分支
  • git checkout 创建一个分支
  • git merge git merge origin/master —— 在当前分支上合并到远程
  • git pull 改指令相当于是实现了两个指令的结合,取回远程主机某个分支的更新,再与本地的指定分支合并,完整格式为:git pull <远程主机名> <远程分支名>:<本地分支名>,如果是要合并到当前分支则 :<本地分支名> 可以去掉。当只有一个分支时git pull 相当于直接合并该分支。
  • git push 将本地分支推送到远程仓库,格式与pull相似

推送本地项目到远程仓库

  • git init 跳转到需上传文件目录下,git init 创建.git文件,生成暂存区
  • git add 将该目录下文件放入暂存区 git add.(相当于全部文件) git add 文件名
  • git commit 将暂存区文件推到仓库区 -m “注释文字”
  • git remote add origin 仓库地址 git remote add origin “仓库地址” 连接github仓库
  • git push -u origin master 推送本地仓库文件到git hub仓库中去git push -u origin master+仓库地址
  • git clone 仓库文件down到本地

另外

面试题会经常问到的git问题

  1. git fetch 和 git pull 区别

前者会把远程分支的改动更新到本地资源区,但不会合并到工作目录的当前分支,后者跳过资源区直接在工作目录分支合并了。结合图片理解更加有效果

  1. git add 和 git commit 分别进行了什么操作

git add 添加改动文件到缓存区,git commit把缓存区的记录更新到本地资源区