Skip to content

03 新建仓库

1. 新建本地 Git 仓库

在本地创建 Git 仓库是使用 Git 的第一步,通常通过 git init 命令初始化一个项目目录。

步骤

  1. 创建或进入项目目录
  2. 打开终端(Windows 使用 Git Bash,MacOS/Linux 使用终端)。
  3. 创建新目录或进入现有项目目录:

    mkdir my-project  # 创建新目录
    cd my-project     # 进入目录
    

  4. 初始化 Git 仓库

  5. 运行以下命令初始化仓库:
    git init
    
  6. 这会在当前目录生成一个隐藏的 .git 文件夹,包含 Git 所需的所有元数据和版本历史。
  7. 输出示例:

    Initialized empty Git repository in /path/to/my-project/.git/
    

  8. 验证初始化

  9. 检查 .git 文件夹是否存在:
    ls -a
    
  10. 若看到 .git 文件夹,表示仓库初始化成功。

  11. 添加文件到仓库

  12. 创建或放入项目文件(例如 README.md 或代码文件)。
  13. 使用以下命令添加文件到暂存区:
    git add .  # 添加所有文件
    # 或指定文件:git add README.md
    
  14. 提交更改到本地仓库:
    git commit -m "Initial commit"  # 提交并添加描述
    

注意事项

  • 隐藏文件夹:若看不到 .git 文件夹,可能需启用“显示隐藏文件”选项(Windows 在文件夹选项中,Linux/MacOS 使用 ls -a)。
  • 提交信息git commit-m 参数必须提供提交说明,建议写清晰的描述(如 "初始化项目")。
  • . gitignore:建议创建 .gitignore 文件,忽略不需要版本控制的文件(如 node_modules/.env):
    touch .gitignore
    echo "node_modules/" >> .gitignore
    echo "*.log" >> .gitignore
    

2. 新建远程 Git 仓库并关联

若需与远程平台(如 GitHub、GitLab、Gitee)协作,需创建远程仓库并与本地仓库关联。

步骤(以 GitHub 为例)

  1. 在 GitHub 上创建远程仓库
  2. 登录 GitHub
  3. 点击右上角“+” > “New repository”。
  4. 输入仓库名称(例如 my-project),选择公开(Public)或私有(Private)。
  5. 不要勾选“Initialize this repository with a README”(避免后续推送冲突)。
  6. 点击“Create repository”,获取仓库的 HTTPS 或 SSH 地址(例如 https://github.com/username/my-project.git)。

  7. 关联本地仓库与远程仓库

  8. 在本地项目目录(已运行 git init)中,运行:
    git remote add origin https://github.com/username/my-project.git
    
  9. 说明:origin 是远程仓库的默认别名,URL 替换为你的仓库地址。

  10. 推送本地仓库到远程

  11. 确保已提交更改(git add .git commit)。
  12. 推送主分支(假设默认分支为 main):
    git push -u origin main
    
  13. -u 参数设置 main 分支为默认上游分支,之后可直接使用 git push

使用 SSH 协议(推荐)

若使用 SSH 协议推送代码,需配置 SSH 密钥: 1. 生成 SSH 密钥

ssh-keygen -t ed25519 -C "你的邮箱@example.com"
- 若系统不支持 ed25519,使用:
ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"
- 按回车接受默认路径,密码可留空。

  1. 添加公钥到 GitHub
  2. 查看公钥:
    cat ~/.ssh/id_ed25519.pub  # 或 id_rsa.pub
    
  3. 复制公钥内容,登录 GitHub,在“Settings > SSH and GPG keys > New SSH key”中粘贴并保存。

  4. 测试 SSH 连接

    ssh -T git@github.com
    

  5. 成功输出示例:Hi 用户名! You've successfully authenticated...

  6. 使用 SSH 地址关联

  7. 修改远程仓库地址为 SSH:
    git remote set-url origin git@github.com:username/my-project.git
    
  8. 推送:
    git push -u origin main
    

3. 常见问题与解决方法

  1. 推送失败(分支不匹配)
  2. 如果远程仓库默认分支为 main,而本地为 master

    git branch -m master main  # 重命名本地分支
    git push -u origin main
    

  3. 远程仓库已有内容(如 README)导致推送冲突

  4. 拉取远程内容并合并:
    git pull --rebase origin main
    
  5. 解决冲突(若有)后重新推送:
    git push -u origin main
    
  6. 或强制推送(谨慎使用,覆盖远程内容):

    git push -u origin main --force
    

  7. 认证失败

  8. 确保 SSH 密钥正确配置,或使用 HTTPS 时检查个人访问令牌(Personal Access Token)。
  9. 生成令牌:GitHub “Settings > Developer settings > Personal access tokens”。

  10. 大文件问题

  11. 若文件过大,考虑使用 Git LFS:
    git lfs install
    git lfs track "*.zip"  # 跟踪大文件类型
    git add .gitattributes
    

4. 最佳实践

  • 初始化时创建 .gitignore:避免提交临时文件或敏感信息。
  • 清晰的提交信息:如 “Add login feature” 而非 “update”。
  • 频繁提交:小步提交,便于追踪和回滚。
  • 检查状态:定期使用 git status 确认更改。
  • 备份远程:定期推送至远程仓库,确保代码安全。

5. 下一步

  • 添加文件:继续添加代码或文档,使用 git addgit commit
  • 分支管理:学习创建分支(git checkout -b feature-branch)进行功能开发。
  • 协作流程:了解 Pull Request 或 Merge Request 工作流。