Git不是一项技术,只是一个工具。用来对代码进行版本控制。
在实际开发中,我们做的项目可能比较庞大,需求也不是很固定,那么我们写的代码有可能删了写,写了删。那么就需要对代码进行一个临时保存,就需要对代码进行版本保存了。
git: 分布式的版本控制工具
svn: 集中式的版本控制工具(了解)
下载安装地址: Git - Downloads
测试是否安装成功: git --version
配置用户名: git config --global user.name 'xxxx'
配置邮箱: git config --global user.email '[email protected]'
通过 git config --global user.name 和 git config --global user.email 配置的用户名和邮箱地址,会被写入到 C:/Users/用户名文件夹/.gitconfig 文件中。这个文件是 Git 的全局配置文件,配置一次即可永久生效。
工作目录 | 暂存区 | 版本仓库 |
---|---|---|
被git管理的工具目录 | 临时存放被修改的文件 | 用于存入提交记录 |
git init
会在项目的根目录下创建.git文件夹,该文件夹就是git本地仓库
如:创建一个测试工作目录test,在test中就会创建一个隐匿文件夹
git add 文件
git commit -m '描述信息'
git status
git status -s 或 git status --short
查看文件现在的状态:
红色: 代表文件现在处于工作区
绿色: 代表文件现在处理暂存区
无信息: 代表现在文件处于已提交状态(版本库与工作区的代码是一致的)
git add .
git log 当前所在历史记录之前的
git reflog 所有历史记录
git reset --hard '历史记录版本号'
有时候有些文件无需纳入 Git 的版本管理中.
在这种情况下,我们可以创建一个名为 .gitignore 的配置文件,列出要忽略的文件的匹配模式。
.gitignore 的格式规范如下:
以 # 开头的是注释
以 / 结尾的是目录
...
概念:
分支就是科幻电影里面的平行宇宙
简单的理解: 分支相当于工作区的一个副本.将当前工作区域的代码拷贝了一份.
作用:
在进行多人协作开发的时候,为了防止互相干扰,提高协同开发的体验,建议每个开发者都基于分支进行项目 功能的开发
git branch
git默认有一个分支: master
git branch 新分支名称
git checkout 分支名称
创建分支及切换分支的快捷命令: git checkout -b 新分支名称
新建了分支后提交到远程仓库,把远程仓库在管理里面设为开源,然后git push 远程仓库地址 新分支名称
git merge 分支名称
注意: 全并分支时要在切换到另一个分支才能合并,不能自己合并自己
例如: 要把C分支的代码合并到A分支,要先切换到A分支,再去合并C分支
git branch -d 分支名称
注意:删除分支时一定要先合并,才能删除
如果没有合并就想强制删除: git branch -D 分支分称
专门用于免费存放开源项目源代码的网站,叫做开源项目托管平台。目前世界上比较出名的开源项目托管平台主要有以下 3 个: Github(全球最牛的开源项目托管平台,没有之一) Gitlab(对代码私有性支持较好,因此企业用户较多) Gitee(又叫做码云,是国产的开源项目托管平台。访问速度快、纯中文界面、使用友好)
github网址: GitHub: Where the world builds software · GitHub
gitee网址: Gitee - 基于 Git 的代码托管和研发协作平台
A在自己的计算机中创建本地仓库
A在github或gitee中创建远程仓库
A将本地的仓库推送到远程仓库
B克隆远程仓库到本地进行开发
B将本地仓库中开发的内容推送到远程仓库
A将远程仓库中的最新内容拉取到本地
4.1 推送远程仓库操作
git push 远程仓库的地址 分支名称
4.2推送远程仓库的简化操作:分为两步
第一步:设置别名
git remote add 别名 远程仓库的地址
例如: git remote add origin 远程仓库的地址
第二步:推送到远程仓库
git push 别名 分支名称
例如: git push origin master
4.3推送远程仓库的再次简化操作
第一次: git push -u 别名 分支名称
第2~N次: git push
总结
git remote add 别名 远程仓库的地址
第一次:git push -u 别名 分支名称
后续操作: git push
git clone 远程仓库地址
git pull 远程仓库地址 分支名称
8.1创建公钥与私钥
ssh-keygen
生成的公钥与私钥存放地址: C:\Users\用户名\.ssh
公钥文件: id_rsa.pub
私钥文件: id_rsa
单词 | 说明 | 实例 |
---|---|---|
git --version | 测试是否安装成功 | |
git config --global user.name 'xxxx' | 配置用户名 | |
git config --global user.email '[email protected]' | 配置邮箱 | |
git init | 初始化项目仓库 | |
git add 文件 | 提交文件到暂存区 | |
git add . | 提交所有文件到暂存区 | |
git commit -m '描述信息' | 添加暂存区的代码在本地版本库 | |
git status | 查看文件状态 | |
git reflog | 查看提交的历史记录 | |
git reset --hard '历史记录版本号' | 切换历史记录版本 | |
.gitignore | git忽略文件以 # 开头的是注释以 / 结尾的是目录 | |
git branch | 查看分支 | |
git branch 新分支名称 | 创建分支 | |
git checkout 分支名称 | 切换分支 | |
git checkout-b 新分支名称** | 创建分支及切换分支的快捷命令 | |
git merge 分支名称 | 合并分支 | |
git branch -d 分支名称 | 删除分支 | |
git branch -D 分支分称 | 没有合并强制删除 | |
git push 远程仓库的地址 分支名称 | 推送远程仓库操作 | |
git remote add 别名 远程仓库的地址 | 设置别名 | 例如: git remote add origin 远程仓库的地址 |
git push 别名 分支名称 | 推送到远程仓库 | 例如: git push origin master |
git clone 远程仓库地址 | 拉取远程仓库到本地 | |
git pull 远程仓库地址 分支名称 | 拉取远程仓库到本地 | |