一、版本控制
Git 属于分布式版本控制
指每个本地的用户都能得到仓库的全部版本信息,可以离线在本地提交,连网push到远程git仓库即可
优点:只有有一个用户的设备没有问题就可以恢复所有数据,不会因为服务器损坏或网络问题,造影响工作
缺点:增加了本地存储的占用;每个人都拥有全部的代码,增加了安全隐患
淘宝镜像下载:http://npm.taobao.org/mirrors/git-for-windows/
二、Git类别
Git Bash:Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD:Windows风格的命令行
Git GUI:图形界面的Git,不建议初学者使用,尽量先熟悉常用命令
三、常用的Linux命令
1)、cd : 改变目录。
2)、cd . . 回退到上一个目录,直接cd进入默认目录
3)、pwd : 显示当前所在的目录路径。
4)、ls(ll): 都是列出当前目录中的所有文件,只不过ll(两个ll)列出的内容更为详细。
5)、touch : 新建一个文件 如 touch index.js 就会在当前目录下新建一个index.js文件。
6)、rm: 删除一个文件, rm index.js 就会把index.js文件删除。
7)、mkdir: 新建一个目录,就是新建一个文件夹。
8)、rm -r : 删除一个文件夹, rm -r src 删除src目录
rm -rf / 切勿在Linux中尝试!删除电脑中全部文件!
9)、mv 移动文件, mv index.html src index.html 是我们要移动的文件, src 是目标文件夹,当然, 这样写,必须保证文件和目标文件夹在同一目录下。
10)、reset 重新初始化终端/清屏。
11)、clear 清屏。
12)、history 查看命令历史。
13)、help 帮助。
14)、exit 退出。
15)、#表示注释
四、Git配置文件
#查看系统config
git config --system --list
#查看当前用户(global)配置
git config --global --list
配置用户名和邮箱(必要操作)
git config --global user.name "***"
git config --global user.email "***"
五、Git基本理论
- Working Directory 工作目录 ,就是你平时存放项目代码的地方
- Stage/Index 暂存区,用于临时存放你的改动,事实上它只是一个文件,保存即将提交到文件列表信息
- Repository/Git Directory 资源库,是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本
- Remote Directory 远程git仓库,托管代码的服务器,可以简单的认为是你项目组中的一台电脑用于远程数据交换
Git 工作流程
1、在工作目录中添加、修改文件;git add .
2、将需要进行版本管理的文件放入暂存区域;git commit
3、将暂存区域的文件提交到git仓库。git push
因此,git管理的文件有三种状态:已修改(modified),已暂存(staged),已提交(committed)
六、Git 项目搭建
常用指令
- add =》commit =》push
- fetch/clone=》checkout》
- pull
本地仓库搭建
一、创建全新仓库
打开要建立仓库的文件夹=》右键打开Git Bash=》输入 git init 进行初始化=》看到.git目录(建立成功)
二、克隆远程仓库
打开要建立仓库的文件夹=》右键打开Git Bash=》输入 git clone url
七、Git 文件操作
文件四种状态
- Untracked
- Unmodify
- Modified
- Staged
查看文件的四种状态
git status # 查看所有文件状态
git status [filename] # 查看指定文件状态
git add . # 添加所有文件到暂存区
git commit -m "提交信息" # 提交暂存区中的内容到本地仓库
忽略文件
#为注释
*.txt #忽略所有 .txt结尾的文件,这样的话上传就不会被选中!
!lib.txt #但lib.txt除外
/temp #仅忽略项目根目录下的TODO文件,不包括其它目录temp
build/ #忽略build/目录下的所有文件
doc/*.txt #会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
七、使用码云gitee
1、注册登录
2、设置本机绑定SSH公钥,实现免密码登录(重要)
# 进入 C:\Users\Administrator\.ssh 目录
# 生成公钥
ssh-keygen #具体看码云
3、在码云上创建仓库,与本地仓库绑定
- 新建仓库
- 克隆到本地
八、Git 分支
分支常用指令:
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 新建一个分支,但依然停留在当前分支
git branch [branch-name]
# 新建一个分支,并切换到该分支 git checkout -b [branch] # 切换分支 git checkout [branch-name]
# 合并指定分支到当前分支
$ git merge [branch]
# 删除分支
$ git branch -d [branch-name]
# 删除远程分支
$ git push origin --delete [branch-name]
$ git branch -dr [remote/branch]