Git 指南:详解仓库创建、文件操作、代码管理与版本控制
侧边栏壁纸
博主昵称
MPL

  • 累计撰写 9 篇文章
  • 累计收到 0 条评论

Git 指南:详解仓库创建、文件操作、代码管理与版本控制

MPL
MPL
2025-02-17 / 0 评论 / 3 阅读 / 正在检测是否收录...

1. 本地 Git 仓库与 GitHub 远程仓库互通及多设备同步指南

本文将指导你如何在本地建立 Git 仓库,关联你的 GitHub 远程仓库 (https://github.com/cnscorpion/ChangeXM.git),并在多台设备之间实现代码同步。

1.1. 步骤概览

  1. 本地创建仓库 (如果你还没有本地仓库)
  2. 关联远程仓库
  3. 拉取远程仓库内容 (如果是新仓库或已有本地仓库但未同步,则执行此步)
  4. 进行修改、提交和推送
  5. 在新电脑上克隆仓库
  6. 设置多个远程仓库 (可选,方便查看或合并其他人的代码)

1.2. 详细步骤

1.2.1. 1. 本地创建仓库 (已有仓库请跳过)

  • 打开命令行终端 (Terminal、Git Bash、PowerShell 等)。
  • 进入你想要创建仓库的文件夹:

    cd /path/to/your/project  # 将 /path/to/your/project 替换为你的项目文件夹路径
  • 初始化 Git 仓库:

    git init

    这会在项目文件夹中创建一个隐藏的 .git 文件夹,用于存储 Git 的版本控制信息。

1.2.2. 2. 关联远程仓库

  • 在本地仓库目录下,使用 git remote add 命令关联远程仓库:

    git remote add origin https://github.com/cnscorpion/ChangeXM.git
    • origin 是远程仓库的别名,通常使用 origin,但你可以自定义。
    • https://github.com/cnscorpion/ChangeXM.git 是你的远程仓库地址。
  • 验证是否关联成功:

    git remote -v

    如果看到类似以下输出,表示关联成功:

    origin  https://github.com/cnscorpion/ChangeXM.git (fetch)
    origin  https://github.com/cnscorpion/ChangeXM.git (push)

1.2.3. 3. 拉取远程仓库内容 (如果是新仓库或未同步,请执行此步)

  • 如果你想将远程仓库的现有内容同步到本地,使用 git pull 命令:

    git pull origin main  # 或 git pull origin master (取决于你的主分支名称,通常是 main)
    • 这条命令会将远程仓库 originmain (或 master) 分支的内容拉取到你的本地仓库,并自动合并。
    • 如果是第一次拉取,可能会要求你输入 GitHub 的用户名和密码/token。

1.2.4. 4. 进行修改、提交和推送

  • 在本地仓库中进行修改、添加或删除文件。
  • 使用 git add 命令将修改的文件添加到暂存区:

    git add .        # 添加所有修改的文件
    git add file1.txt file2.txt  # 添加指定文件
  • 使用 git commit 命令将暂存区的修改提交到本地仓库:

    git commit -m "你的提交信息"  # 提交信息应简要描述你的修改
  • 使用 git push 命令将本地仓库的修改推送到远程仓库:

    git push origin main  # 或 git push origin master (取决于你的主分支名称)
    • 如果是第一次推送,可能会要求你输入 GitHub 的用户名和密码/token。
    • 重要: 在多人协作的项目中,push 之前最好先 git pull 一下,以避免冲突。

1.2.5. 5. 在新电脑上克隆仓库

  • 在新电脑上打开命令行终端。
  • 进入你想要存放仓库的文件夹:

    cd /path/to/store/repository # 替换为你的目标路径
  • 使用 git clone 命令克隆远程仓库:

    git clone https://github.com/cnscorpion/ChangeXM.git

    这会将整个远程仓库克隆到你的新电脑上,包括所有历史记录。

  • 进入克隆下来的仓库目录:

    cd ChangeXM
  • 现在你可以在新电脑上进行修改、提交和推送,操作与步骤4相同。

1.2.6. 6. 设置多个远程仓库 (可选)

如果你需要跟踪其他人的仓库 (例如,为了学习或合并代码),可以添加多个远程仓库:

  • 添加另一个远程仓库:

    git remote add upstream https://github.com/otheruser/ChangeXM.git  # 将 otheruser 替换为对方的用户名

    这里使用了 upstream 作为另一个远程仓库的别名,你可以自定义。

  • 从另一个远程仓库拉取代码:

    git fetch upstream
    git merge upstream/main  # 将 upstream 的 main 分支合并到你的本地分支

1.3. 重要提示

  • 分支管理: 如果你的项目有多个分支,可以使用 git branch 查看分支,git checkout 切换分支,git merge 合并分支。
  • 冲突解决: 如果在 git pullgit merge 时发生冲突,需要手动解决冲突,然后再次 git addgit commit
  • .gitignore 文件: 创建一个名为 .gitignore 的文件,列出你不希望 Git 跟踪的文件或文件夹 (例如,临时文件、编译生成的文件等)。
  • SSH 密钥: 为了避免每次输入用户名和密码/token,可以设置 SSH 密钥。 详细步骤可以参考 GitHub 的官方文档。
  • Token: 如果使用 Token,记得设置 Token 的过期时间,并及时更新。
  • 常用命令总结:

    • git init: 初始化本地仓库
    • git remote add origin <URL>: 关联远程仓库
    • git clone <URL>: 克隆远程仓库到本地
    • git add .: 添加所有修改到暂存区
    • git commit -m "message": 提交暂存区内容到本地仓库
    • git push origin <branch>: 推送本地分支到远程仓库
    • git pull origin <branch>: 拉取远程分支到本地并合并
    • git branch: 查看本地分支
    • git checkout <branch>: 切换分支
    • git merge <branch>: 合并分支
    • git remote -v: 查看远程仓库信息
    • git fetch <remote>: 获取远程仓库更新, 但不合并
    • git status: 查看仓库状态

2. 将本地 Git 仓库变动提交到远程仓库

本文详细讲解在本地仓库有内容变动后,如何将变动的文件提交到远程仓库。

2.1. 步骤

  1. 查看变动状态 (可选,但强烈推荐)

    在提交之前,最好先查看一下本地仓库的状态,了解哪些文件发生了变动:

    git status

    git status 命令会显示:

    • Untracked files: 未被 Git 跟踪的文件 (新添加的文件)。
    • Changes not staged for commit: 已修改但未添加到暂存区的文件。
    • Changes to be committed: 已添加到暂存区,等待提交的文件。
    • Unmerged paths: 发生冲突的文件 (如果有)。
  2. 添加变动的文件到暂存区

    使用 git add 命令将你想要提交的变动文件添加到暂存区:

    git add .           # 添加所有变动的文件 (包括新增、修改和删除)
    git add file1.txt   # 添加单个文件
    git add folder/     # 添加整个文件夹及其下的所有文件
    git add *.py        # 添加所有 .py 文件 (使用通配符)
    • git add . 是最常用的,它会添加所有变动。但如果你只想提交部分文件的变动,可以使用 git add <文件名>git add <文件夹名>
    • 对于删除的文件,git add . 也会将其标记为删除。 你也可以使用 git rm <文件名> 来删除文件并将其添加到暂存区。
  3. 提交变动到本地仓库

    使用 git commit 命令将暂存区的变动提交到本地仓库:

    git commit -m "你的提交信息"
    • -m 选项后面跟着你的提交信息,应该简明扼要地描述你所做的修改。一个好的提交信息可以帮助你和其他人更好地理解代码的历史。
    • 不要省略 -m 选项,否则 Git 会打开一个文本编辑器让你输入提交信息 (通常是 Vim 或 Nano,如果你不熟悉这些编辑器,可能会比较困惑)。
  4. 推送到远程仓库

    使用 git push 命令将本地仓库的提交推送到远程仓库:

    git push origin main  # 或 git push origin master (取决于你的主分支名称)
    • origin 是你之前设置的远程仓库的别名。
    • main (或 master) 是你要推送的分支。

    如果这是你第一次推送到这个分支,或者远程仓库有更新,Git 可能会要求你输入 GitHub 的用户名和密码/token。

2.2. 示例

假设你修改了 README.md 文件和 src/main.py 文件,并添加了一个新文件 data/data.csv

# 1. 查看状态
git status

# 输出可能如下:
# On branch main
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git restore <file>..." to discard changes in working directory)
#         modified:   README.md
#         modified:   src/main.py
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#         data/data.csv

# 2. 添加所有变动的文件到暂存区
git add .

# 3. 提交到本地仓库
git commit -m "更新 README.md,修改 main.py,添加 data.csv"

# 4. 推送到远程仓库
git push origin main
0

评论

博主关闭了所有页面的评论