Git 的正确使用姿势与最佳实践 | 青训营

91 阅读2分钟

Git 和 Git hub分别是什么

Git是一个运行在电脑上的版本控制软件,而github是基于git打造的网站。

Git的三个概念:提交commit、仓库repository、分值branch

Git 工作原理

Image.png

Image.png

Git项目搭建

Image.png

Git文件操作

文件的4种状态

  • untracked:未跟踪,文件在文件夹中,没有加入git仓库。通过git add 状态变为 staged
  • unmodify:文件入库,未修改,版本库中文件快照内容与文件夹中完全一致。
    • 若被修改状态为modified
    • 使用git rm 移出版本库,变为untracked文件
  • modified:文件已经修改,仅仅是修改,没有其他操作
    • git add可进入暂存staged状态
    • git checkout 丢弃修改,返回unmodify,覆盖当前修改
  • staged:暂存状态
    • git commit 将修改同步到库中,库中文件和本地文件变为一致

    • 文件为unmodify状态,执行git reset HEAD filename取消暂存,状态为modified

工作步骤

  1. 在文件夹中写代码文件
  2. get add .   提交至暂存区
  3. git status  是否被提交
  4. git commit -m "消息内容"   提交到本地

忽略文件

.gitignore

Image.png

Image.png

Git分支

  • 建立分支,但依然停留在当前分支  git branch [branch-name]

  • 新建分支,切换到该分支  git branch -b [branch]

  • 合并制定分支到当前分支  git merge [branch]

  • 删除分支    git branch -d [branch-name]

  • 删除远程分支 

    git push origin --delete [branch-name]

    git branch -dr [remote/branch]

Q:如果同一个文件在合并分支时被修改了,引起冲突怎么办?

A:可以修改冲突文件后重新提交,选择保留谁的代码

fork

从别人的代码仓库中复制一份到自己的代码仓库,包含库中的提交历史记录,经过fork之后的代码库是完全独立的,更改完后可以通过pull request向源仓库提交并请求合并。

流程

图片.png

  1. 复制别人的仓库:复制代码、文件、提交历史等数据,并在自己的账号中存储
  2. clone远程的项目
  3. 在工作区中对代码进行增删改查操作
  4. 将代码更改提交到暂存区 git add
  5. 将暂存区的文件提交到本地仓库 git commit -m "修改"
  6. 将本地仓库的代码推送到远端的仓库 git push
  7. 向仓库发送pull request,若原作者同意修改,则将修改的部分合并到自己的库中。