Git是分布式版本控制系统,可以快速高效的处理各种大小的项目版本管理
Git的三个区域
工作区、暂存区、Git仓库
git基本指令
git init 初始化git仓库
git status 查看文件处于什么状态
git add 开始跟踪一个文件 进入暂存状态
git add . 一次性添加多个文件
git commit -m '字符串' 提交更新
git checkout 把工作区中对应文件的修改,还原成 Git 仓库中所保存的版本
git commit -am 跳过暂存区直接提交 但只能提交已经被管理的文件,新增加的不能使用
git rm -f 从 Git仓库和工作区中同时移除
git rm --cached 只从 Git 仓库中移除 但保留工作区中的
git log 显示提交历史
git reset --hard<ID>根据ID回退到指定版本
git relog 显示所有提交历史【i···
如何忽略文件
创建一个.gitignore文件,然后使用正则
开源和闭源
开源不仅提供程序,也提供源代码
闭源只提供程序,不能看到源代码
开源许可协议
为什么要拥抱开源
1.开源给使用者更多的控制权
2.开源让学习变得更容易
3.开源才有真正的安全
远程仓库的两种访问方式
1.HTTPS
2.SSH
克隆
git clone 地址 在本地工作区克隆一个地址指向的git远程仓库
git分支(重点)
主分支 用来保存和记录完整的功能代码
功能分支 程序员用来开发新功能的分支,当新功能开发并且测试完毕后,合并到主分支上
git branch 查看当前仓库内所有分支
git branch 分支名称 基于当前分支新建一个分支
git checkout 分支名称 切换分支
git checkout -b 分支名称 快速创建分支并且切换
切换分支时一定要确保该分支是否干净,文件是否提交完毕
合并分支
1.切换到目标分支
2.git merge 需要合并的分支名
删除分支
git branch -d 分支名称 PS:无法删除当前位于的分支
远程分支操作
touch 文件名 可以在git里面创建文件
# -u 表示把本地分支和远程分支进行关联,只在第一次推送的时候需要带 -u 参数
git push -u 远程仓库的别名 本地分支名称:远程分支名称# 实际案例
git push -u origin payment:pay# 如果希望远程分支的名称和本地分支名称保持一致,可以对命令进行简化
git push -u origin payment
git push 提交到远程服务器
git fetch 远程仓库名称 远程分支名称:本地分支名称 指定拉取远程的指定分支
git pull 从服务器下拉最新的代码