03 新建仓库
1. 新建本地 Git 仓库¶
在本地创建 Git 仓库是使用 Git 的第一步,通常通过 git init 命令初始化一个项目目录。
步骤¶
- 创建或进入项目目录:
- 打开终端(Windows 使用 Git Bash,MacOS/Linux 使用终端)。
-
创建新目录或进入现有项目目录:
-
初始化 Git 仓库:
- 运行以下命令初始化仓库:
- 这会在当前目录生成一个隐藏的
.git文件夹,包含 Git 所需的所有元数据和版本历史。 -
输出示例:
-
验证初始化:
- 检查
.git文件夹是否存在: -
若看到
.git文件夹,表示仓库初始化成功。 -
添加文件到仓库:
- 创建或放入项目文件(例如
README.md或代码文件)。 - 使用以下命令添加文件到暂存区:
- 提交更改到本地仓库:
注意事项¶
- 隐藏文件夹:若看不到
.git文件夹,可能需启用“显示隐藏文件”选项(Windows 在文件夹选项中,Linux/MacOS 使用ls -a)。 - 提交信息:
git commit的-m参数必须提供提交说明,建议写清晰的描述(如 "初始化项目")。 - . gitignore:建议创建
.gitignore文件,忽略不需要版本控制的文件(如node_modules/、.env):
2. 新建远程 Git 仓库并关联¶
若需与远程平台(如 GitHub、GitLab、Gitee)协作,需创建远程仓库并与本地仓库关联。
步骤(以 GitHub 为例)¶
- 在 GitHub 上创建远程仓库:
- 登录 GitHub。
- 点击右上角“+” > “New repository”。
- 输入仓库名称(例如
my-project),选择公开(Public)或私有(Private)。 - 不要勾选“Initialize this repository with a README”(避免后续推送冲突)。
-
点击“Create repository”,获取仓库的 HTTPS 或 SSH 地址(例如
https://github.com/username/my-project.git)。 -
关联本地仓库与远程仓库:
- 在本地项目目录(已运行
git init)中,运行: -
说明:
origin是远程仓库的默认别名,URL 替换为你的仓库地址。 -
推送本地仓库到远程:
- 确保已提交更改(
git add .和git commit)。 - 推送主分支(假设默认分支为
main): -u参数设置main分支为默认上游分支,之后可直接使用git push。
使用 SSH 协议(推荐)¶
若使用 SSH 协议推送代码,需配置 SSH 密钥: 1. 生成 SSH 密钥:
- 若系统不支持ed25519,使用:
- 按回车接受默认路径,密码可留空。
- 添加公钥到 GitHub:
- 查看公钥:
-
复制公钥内容,登录 GitHub,在“Settings > SSH and GPG keys > New SSH key”中粘贴并保存。
-
测试 SSH 连接:
-
成功输出示例:
Hi 用户名! You've successfully authenticated... -
使用 SSH 地址关联:
- 修改远程仓库地址为 SSH:
- 推送:
3. 常见问题与解决方法¶
- 推送失败(分支不匹配):
-
如果远程仓库默认分支为
main,而本地为master: -
远程仓库已有内容(如 README)导致推送冲突:
- 拉取远程内容并合并:
- 解决冲突(若有)后重新推送:
-
或强制推送(谨慎使用,覆盖远程内容):
-
认证失败:
- 确保 SSH 密钥正确配置,或使用 HTTPS 时检查个人访问令牌(Personal Access Token)。
-
生成令牌:GitHub “Settings > Developer settings > Personal access tokens”。
-
大文件问题:
- 若文件过大,考虑使用 Git LFS:
4. 最佳实践¶
- 初始化时创建
.gitignore:避免提交临时文件或敏感信息。 - 清晰的提交信息:如 “Add login feature” 而非 “update”。
- 频繁提交:小步提交,便于追踪和回滚。
- 检查状态:定期使用
git status确认更改。 - 备份远程:定期推送至远程仓库,确保代码安全。
5. 下一步¶
- 添加文件:继续添加代码或文档,使用
git add和git commit。 - 分支管理:学习创建分支(
git checkout -b feature-branch)进行功能开发。 - 协作流程:了解 Pull Request 或 Merge Request 工作流。