Git学习
Git学习
基本的Linux命令行命令
改变目录
1 | cd 目的目录 # 去往目的目录 |
显示信息
1 | pwd # 显示当前所在目录 |
创建与删除
1 | touch index.js # 新建一个名为"index.js"的文件 |
终端相关
1 | reset # 重置终端 |
Git配置
查看配置
所有配置文件都保存在本地
相关配置文件位置
Git安装目录下的 Git\etc\gitconfig
Linux命令查看配置
1 | # 查看配置 |
设置配置
1 | git config --global user.name "用户名" |
Git理论核心
工作区域
工作区(Workspace/Working Directory):工作区,平时存放代码
暂存区(Stage/Index):暂存区,用于临时存放改动
仓库区(Repository):仓库区(本地仓库),安全存放数据的位置,有所有版本的数据.其中HEAD指向最新放入仓库的版本
远程git仓库(Remote)
工作流程
在工作目录中添加,修改文件
将需要进行版本管理的文件放入暂存区域
1
git add . # 将所有文件添加到暂存区
将暂存区域的文件提交到git仓库
1
git commit
Git项目搭建
本地仓库搭建
创建本地仓库的方式有两种:
创建全新仓库
1
2# 在当前目录新建一个Git代码库
git init执行后会看到隐藏目录.git
克隆远程仓库
1
2# 在当前目录克隆一个库
git clone [url]
Git文件操作
文件的四种状态
- Untracked:未跟踪,不参与版本控制
- Unmodified:文件已入库,未修改,即版本库中文件快照内容物文件夹中完全一致
- Modified:文件已修改,但没有其他操作.使用 git add 可进入暂存状态,使用 git checkout 则丢弃修改
- Staged:暂存状态,执行 git commit 则将修改同步到库中,执行 git reset HEAD filename 取消暂存
用命令行查看文件的状态
1 | # 查看所有文件状态 |
用命令行改变文件状态
1 | # 添加所有文件到暂存区 |
忽略文件
在目录下建立 .gitignore 文件
忽略文件中的空行或以井号( # )开始的行将会被忽略.
可以使用Linux通配符.例如:星号( * )代表任意多个字符,问号( ? )代表一个字符,方括号([ABC])代表可选字符范围,大括号({string1,string2..})代表可选的字符串等.
如果名称的最前面有一个感叹号( ! ),表示例外规则,将不被忽略.
如果名称的最前面是一个路径分隔符( / ),表示要忽略的文件在此目录下,而子目录中的文件不忽略.
如果名称的最后面是一个路径分隔符( / ),表示要忽略的是此目录下该名称的子目录,而非文件(默认文件或目录都忽略).
1
2
3
4
5
6#为注释
*.txt # 忽略所有.txt结尾的文件
!lib.txt # 但lib.txt除外
/temp # 仅忽略项目根目录下的TODO文件,不包括其它目录temp(向前忽略)
bui1d/ # 忽略bui1d/目录下的所有文件(向后忽略)
doc/*.txt # 会忽略doc/notes.txt但不包括doc/server/arch.txt
Gitee操作
设置本机绑定SSH公钥
1 | # 进入C:\user\Administratory\.ssh目录 |
将公钥注册到码云信息中
将 id_rsa.pub 文件中的内容添加到SSH公钥中
使用Gitee创建仓库
许可证:开源是否可以随意转载,开源但是不能商用
Git分支
查看当前分支
1 | # 查看当前本地分支 |
管理分支
1 | # 新建分支 |
Unity Git
出现问题
1 | fatal: detected dubious ownership in repository at |
解决方法
1 | # 因为git心的权限安全策略导致的报错,可以按提示把目录添加到信任列表 |
.gitignore配置
1 | Library/ |
初始化本地仓库
1 | # 初始化git |
连接远程仓库
1 | # 以gitee为例 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 路北路陈!