Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目

Git 是Linus Torvalds为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

Git 与常用的版本控制工具CVS,Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持

Git目录

‘Git目录’是为你的项目存储所有历史和元信息的目录 - 包括所有的对象(commits,trees,blobs,tags), 这些对象指向不同的分支

每一个项目只能有一个’Git目录’(这和SVN,CVS的每个子目录中都有此类目录相反),这个叫’.git’的目录在你项目的根目录下(这是默认设置,但并不是必须的)

  1. |-- HEAD # 这个git项目当前处在哪个分支里
  2. |-- config # 项目的配置信息,git config命令会改动它
  3. |-- description # 项目的描述信息
  4. |-- hooks/ # 系统默认钩子脚本目录
  5. |-- index # 索引文件
  6. |-- logs/ # 各个refs的历史信息
  7. |-- objects/ # Git本地仓库的所有对象(commits, trees, blobs, tags)
  8. |-- refs/ # 标识你项目里的每个分支指向了哪个提交(commit)

基本模型

本地仓库

Working directory工作区: 记录工作文件夹状态 git status查看文件是否修改

Stage暂存区 : git add - 添加文件进入

History历史区 : git commit - 提交暂存区记录

Git - 图1

远程仓库 - GitHub网址仓库 例 - https://github.com/accountName/repo.git

基本命令

  1. 仓库管理 repo:仓库名称 directory:指定目录 fileName:文件名称
  2. 创建仓库 git init <repo>
  3. 拷贝仓库 git clone <repo> <directroy>
  4. 添加文件 git add <fileName>
  5. 更新提交上传 description:描述 origin:远程仓库地址别名(默认origin) branchName:分支名称
  6. 更新仓库到Stage git fetch
  7. 更新仓库到Histroy git pull
  8. 提交记录 git common -m <description> -m:表示后续附加描述说明 不写-m 命令行会提示你输入提交描述
  9. 推送远程仓库 git push <origin> <branchName>
  10. 分支管理 <branchName>:分支名称
  11. 查看分支 git branch
  12. 切换分支(文件替换) git checkout <branchName>
  13. 创建分支 git branch <branchName>
  14. 分支合并 git merch
  15. 删除分支 git branch -d <branchName>

IDEA操作Git

IDEA创建本地仓库
Git - 图2
关联远程仓库
Git - 图3

合并分支 (IDEA右下角)
Git - 图4

上传远程仓库 (PUSH)
Git - 图5