文件管理 - Git

63 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第15天,点击查看活动详情

1、添加文件

添加文件相关命令

  • git init 初始仓库
  • git status 查看工作区的状态 如果出现working tree is clean 说明工具区里面的数据和分支的数据是一样的
  • git add 文件1 文件2 把文件提交到暂存区
  • git commit -m ‘批注信息’ 把当前分支的暂存的所有数据提交到当前分支
  • git diff 文件名 查看当前文件和当前分支的文件内容的区别 如果没有区别就不显示任何东西

2、撤销及版本回退

  • Git分三个区: 工作区 暂存区 分支

  • 显示当前分支的文件的提交记录(版本号可以使用git log 文件名查看): git log 文件名

  • 文件只是在工作区、暂存区[撤销 没有commit之前] git checkout 文件名

  • 文件到分支里面[回退 commit之后] git reset --hard HEAD^ 回退上一个版本 git reset --hard HEAD^^ 回退上二个版本 git reset --hard 版本号 回退到指定版本

3、工作区和暂存区

image.png

说明:

  • 如果在仓库添加一个文件,默认在工作区
  • 如果使用add 之后到暂存区(stage)
  • 如果使用commit 之后 是提交到当前分支(master)

4、文件管理-删除文件

  • 先使用 git rm -rf 文件名 删除
  • 再使用 git commit -m '批注信息' 提交 一次

5、分支管理

相关命令:

  • git branch 查看当前仓库的所有分支
  • git branch dev 在当前仓库创建一个名为dev的分支
  • git checkout -b dev 在当前仓库创建一个名为dev的分支并切换到dev分支
  • git checkout dev 切换到dev分支
  • git branch -d v1 删除v1分支 【先离开这个分支】

合并:

  • git merge 分支名
  • git rebase 分支名
  • Git Merge:这种合并方式是将两个分支的历史合并到一起,现在的分支不会被更改,它会比对双方不同的文件缓存下来,生成一个commit,去push。
  • Git ReBase:这种合并方法通常被称为“衍合”。他是提交修改历史,比对双方的commit,然后找出不同的去缓存,然后去push,修改commit历史。
  • 如果合并后出现冲突,想回到合并前版本 Git merge --abort -> git reset --hard 版本号

image.png

6、分支管理-Bug分支

  • 存储当前工作环境: git stash

  • 列出当前分支存储的所有工作环境: git stash list

  • 恢复工作环境: git stash pop