git使用
- 0.写在前面
- [1. 本地与远程的连接](#1. 本地与远程的连接)
-
- [1.0 本地仓库op](#1.0 本地仓库op)
- [1.1 暂存仓库op](#1.1 暂存仓库op)
- [1.3 创建keygen进行SSH连接](#1.3 创建keygen进行SSH连接)
- [1.4 远程仓库op](#1.4 远程仓库op)
- [1.5 残留问题](#1.5 残留问题)
- reference
- 2.更新与版本控制(后续更新)
0.写在前面
相信有一堆人到现在还没用清楚git进行项目管理,,,,。。
内容持续补充中,,,,
场景是在本地文件夹和github远程仓库都创建好后,使用git bash将本地文件夹上传到github仓库。
基于三个区:本地、暂存、远程,进行分步实现,同时也记录了过程中出现的问题与解决方法。
所以在这之前,你要有如下准备:
-
右键本地文件夹->Open Git Bash here

接下来开始正式操作。
1. 本地与远程的连接
1.0 本地仓库op

- 将本地文件变成git可管理仓库
c
git init
完成后文件夹下,出现.git文件
1.1 暂存仓库op
- 将所有更改添加到暂存区
c
git add .
完成后使用命令:
c
git status
查看状态。成功显示绿色,否则显示红色

- 将更改提交到本地仓库
c
git commit -m "first commit"

更具体gpt解释

1.3 创建keygen进行SSH连接
step 1 :创建pub:
c
ssh-keygen -t rsa -C "yourmail@xxx.com"
一些注意事项:
- pub生成路径:默认保存在C:\Users\用户名.ssh下,也可以自己修改其他。我设置默认直接回车
- 密码设置:避免麻烦直接我直接不设置,回车两次 empty密码
step 2:把创建的密钥添加进github
Settings-》SSH and GPG keyss
SSH keys -》New SSG key
- Title :任意命名
- Key: 把之前生成的id_rsa.pub文件内容复制进去
1.4 远程仓库op
- 连接远程仓库
c
git remote add origin https://github.com/username/repository.git
- 将提交推送到远程仓库的 main 分支
c
git push -u origin main
注意,首次且远程仓库empty需要加上 -u
这边出现代理设置问题

参考stack overflow解决,使用以下命令清楚代理设置
c
git config --global --unset http.proxy
git config --global --unset https.proxy
重新上传,出现这个,认证完就行上传了

结果打开又出现了问题There isn't anything to compare.


c
# 切换分支至master
git checkout master
# 强制重命名master分支为main分支
git branch main master -f
# 切换分支至main
git checkout main
# 强制推送本地main分支至远程库,并覆盖远程main分支内容
git push origin main -f
执行后再次重新上传,成功了

最后打开github验证一下,是否上传成功了。

1.5 残留问题
- 还不很明白什么分支之类的,main和master那些是啥
- 我看我似乎还挂着gitee的号,是不是都是git生态所以无所谓
- 版本控制啥的后续操作还不会
reference
详细流程参考这位老哥的博客,感谢!
detail:
@brief:本地仓库与远程仓库的连接相关
@date:2024-08-10 17:55
@author:17BOY
2.更新与版本控制(后续更新)
感觉就是pull、push、clone的事儿!
先放个gpt了解个大概