[git]先创建远程仓库or先创建本地项目

问题:一般来说,是先在github上创建一个项目,然后拉到本地, 还是先在本地创建项目然后推到github上呢

两种方式都常见,但日常更推荐"先在 GitHub 建仓库,再 clone 到本地",尤其是团队协作或已有远程仓库的场景。下面把两种方式讲清楚,以及各自适合什么情况。

方式一:先 GitHub 建仓库 → clone 到本地(推荐)

流程:

  1. GitHub 上 New repository,建好后得到仓库地址
  2. 本地执行 git clone <地址>
  3. 在克隆下来的目录里开发、提交、push

优点:

  • 远程和本地的追踪关系自动配好 ,main 自动追踪 origin/main,不用手动 git branch -u
  • 初始就带 .gitignore、README、LICENSE 等(建仓库时可勾选生成)
  • 多人协作时,别人已经建好仓库,你只能 clone
  • 避免"本地先 init、push 时远程已有提交导致冲突"的麻烦

适合:团队项目、从零开始的新项目、克隆别人的仓库。



方式二:本地建项目 → push 到 GitHub

流程:

bash 复制代码
git init
git add .
git commit -m "init"
# GitHub 上建一个空仓库(不要勾选 README/.gitignore,否则会有初始提交)
git remote add origin <地址>
git branch -M main
git push -u origin main

优点:

  • 先本地开发、后决定要不要公开/上传,适合个人实验项目
  • 不想在 GitHub 网页上操作时更顺手

注意点:

  • GitHub 建仓库时务必建"空仓库" (不勾 README、.gitignore、LICENSE),否则远程会有一个初始提交,和本地历史无共同祖先,push 会被拒,得先 git pull --allow-unrelated-histories 或强推
  • git push -u origin main 里的 -u 很关键,它建立本地 main 对 origin/main 的追踪关系,之后才能直接 git pull/git push

适合:个人项目、本地已有代码想上传、离线先开发。

怎么选

场景 建议
团队协作 / 别人已建好仓库 先 GitHub,clone
全新项目、想用 GitHub 生成的 .gitignore/README 先 GitHub,clone
本地已有一堆代码要上传 本地 init,再 push(远程建空仓库)
个人实验、不确定要不要公开 本地 init,再 push

一个容易踩的坑

如果选了方式二,远程建仓库时千万别勾选"Add a README"等初始化选项 。这是新手最常见的 push 失败原因------远程有提交、本地也有提交,两条历史不相干,Git 拒绝合并。要么建空仓库,要么用 --allow-unrelated-histories 处理。

总结:没有绝对对错,但"先 GitHub 建仓库再 clone"能自动配好追踪关系、少踩坑,是更省心的默认选择;本地已有代码或想先离线开发时,再用"本地 init → push"的方式。

相关推荐
六个蒙多都说少之一拳下去那得是3 小时前
Git 与 GitHub 从零到协作:核心操作完全指南
github·代码规范
FeiYull3 小时前
Windows 下 YOLO26 Seg 的 TensorRT C++ 部署
github
Linux实战笔记5 小时前
rebase 变基引发提交哈希重写与指针机制分析
git·rebase·提交哈希·分支模型·代码合并
穆梓兰煊6 小时前
AI 供应链安全:模型制品签名校验与 Redis 缓存落地
github
简创AIGC陶先生6 小时前
【直播切片工作台】第17章:JWT 鉴权:签发、解析与中间件
github
Funlang6 小时前
Fun 的工具链,自己写自己
github
小稀土1236 小时前
私有化研发协同系统并行期:旧 Jira 与新 Git 并存 6 条数据规则
git
云南新人和数采集团6 小时前
DeepSeek Harness 开源贡献手记:从入门到合入主线
python·开源·github
Madison-No77 小时前
Git版本控制工具(二)
git