一、 基础知识
工作区:写代码
暂存区:临时存储
本地库:历史版本
graph LR
    A[工作区]-->|git add|B[暂存区]
    B-->|git commit|C[本地库]
Git和代码托管中心
代码托管中心:维护远程库
- 局域网环境下
- GitLab
 - …
 
 - 外网环境下
- GitHub
 - 码云
 - …
 
 
本地库和远程库
- 团队内部协作
 
graph LR
    A[本地库1]-->|"1.git push(项目管理者)"|B[远程库]
    B-->|2.git clone|C[本地库2]
    C-->|"3.git push(需加入团队)"|B
    B-->|"4.git pull"|A
- 跨团队协作
 
graph LR
    A[远程库1]-->|"1.fork"|B[远程库2]
    B-->|"2.git clone"|C[本地库]
    C-->|"3.git push"|B
    B-->|"4.pull request -> 审核 -> merge"|A
二、实践
- 初始化目录
 
1  | git init  | 

其中,.git目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改
- 设置签名
 
签名的作用:区分不同开发人员的身份
1  | 用户名:  | 
- 
项目级别/仓库级别:仅在当前本地库范围内有效
 - 
系统用户级别:登录当前操作系统的用户范围
 
注意:
这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系;
项目级别优先于系统用户级别,二者都有时采用项目级别的签名;
如果只有系统用户级别的签名,就以系统用户级别的签名为准;
但不允许二者都没有,否则后面会报错;
1  | git config(项目级别)  | 
例如
1  | git config user.name lushuangning  | 

(未完待续)

