git上传Github远程仓库
Git提交远程仓库流程
-
正常流程
-
首次提交
git init
git add .
git commit -m "说明"
git remote add origin git@github.com:qingyaozhuozhang/qingyaozhuozhang.github.io.git
git branch -M main
git push origin main
- 二次提交
- 需要用到pull
- 使用clone方法
-
查阅权限
-
进入
settings,然后再左侧栏目中选择Collaborators,点击Manage visibility,在Danger Zone中点击Change visibility,可以将私有仓库换成共有仓库 -
非正常问题说明
1.如果之前已经有在这个仓库创建过链接,需要换到另一个仓库需要使用set-url
git remote set-url origin git@github.com:qingyaozhuozhang/qingyaozhuozhang.github.io.git
2.如果推上去的内容与原先内容有冲突
(1)直接使用-f参数
git push -f origin main
(2)第一次推送得使用-u参数
git push -u origin main
3.需要使用git pull的情况
(1)正常
git pull origin main
(2)遇到合并情况
git pull --rebase origin main(--rebase保持提交历史是一条干净的支线,而不是充满复杂的"Merge branch.."的记录)
(3)遇到refusing to merge unrelated histories问题
git pull origin main --allow-unrelated-histories(合并两个完全独立、没有共同祖先的仓库)
4.在整个文件夹的根目录下,想要上传单个文件夹
- 使用
git clone git add 文件夹名称/或者git add 路径/
5.克隆仓库
-
git clone git@github.com:qingyaozhuozhang/qingyaozhuozhang.github.io.git -
git clone不需要提前git init
6.github强制覆盖本地
git fetch --all
git reset --hard origin/main
7.修改仓库错误,需要回退
- 打开github仓库主页右侧的
Commits找到之前的Commit Hash - 或者在终端中输入
git reflog - 1.强制提交
git reset --hard <你的Hash>-
git push -f origin main -
2.跳过pull
-
git checkout <ID> .(空格加 .) -
回退到之前的内容,但是本地新增加的那个文件夹不会删除
8.Git子模块问题
- 问题:如果在子文件中新增加了
git仓库(会生成链接,在github上无法打开) - 解决方案:将文件删掉,然后
git add \ git commit(在本地),再重新将文件添加回来,继续git add \ git commit(在本地),最后在git push
9.Github上传单个文件最多100MB
10.Github同时上传同一个东西的时候会清空一个(空文件夹)
11.克隆仓库内单个分支(git clone -b 分支名 --single-branch git地址)
12.结合vscode在本地创建新分支
git switch -c test --track origin/test(基于远程origin/test创建本地test分支)
13.网络代理