现阶段的理解,后续可能还会更新。
原理:
1、A创建本地仓库和远程仓库
- 本地仓库初始化
$ git init
- 查看本地仓库状态
在本地已经创建一个index.html文件
$ git status
index.html是没有被git管理的文件
- 添加到暂存区
$ git add index.html
- 将暂存区的文件添加到git仓库中
$ git commit -m 提交说明
- 创建远程仓库
网站上创建:https://gitee.com
2、将本地仓库上传到远程仓库
$ git push 远程仓库链接 分支名称
- 为方便传送,可以为远程仓库起别名
$ git remote add origin https://gitee.com/gyl327/webtest2.git
2. -u记住推送地址和分支名,下次提交只用写$ git push
$ git push -u origin master
$ git push
- 若文件发生变化,需要重新提交到暂存区
3、B将Github远程仓库克隆到本地仓库
$ git clone 克隆仓库的地址
文件夹里面出现克隆的文件:
4、B将修改的文件推送到远程仓库
- B查看文件
$ git webtest1
$ git status
颜色为红色表示已经修改但是还未提交到暂存区,再次提交。
- 上传到远程仓库;
5、A将最新版本更新到本地仓库
$ git pull origin master
遇到的问题及解决方式:
一、解决冲突问题
原因:A、B都修改了同一个地方
解决方法:先将最新版本更新到本地,在本地修改后再上传到远程
二、现象:
在git提交的时候有的文件提交不上去。
没有找到能提交的东西,后来发现是重新改了文件大小写名称。
原因:git默认配置为忽略大小写,因此无法正确检测大小写的更改
解决方法:运行git config core.ignorecase false,关闭git忽略大小写配置,即可检测到大小写名称更改。或者改一个文件名称。
三、现象:
命令行时密码输入错误不能第二次输入
解决方法:控制面板->凭据管理器->windows凭据->删除密码
四、现象
git push出现“fetch first”的解决办法
说明github上的远程库与本地库版本不一致,要先fetch first。
输入命令:git push origin master -f 强制上传