git基础使用指南
Git 的基本用法可围绕代码提交、分支管理、远程协作三大核心场景展开,以下是最常用的命令和操作流程:
一、代码提交:本地仓库的基本操作
1. 初始化与配置
初始化本地仓库:在项目文件夹中创建 Git 仓库
1
git init
配置用户信息(全局或当前仓库):
1
2
3git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"
# 仅当前仓库生效:去掉 --global
2. 提交代码到本地仓库
- 添加文件到暂存区:
1 | git add 文件名 # 单个文件,如 git add main.js |
- 提交到本地仓库(附带提交说明):
1 | git commit -m "修复登录按钮 bug" |
二、分支管理:多版本并行开发
1. 分支操作
创建新分支:
1
git branch 新分支名 # 如 git branch feature/login
切换分支:
1
2git checkout 分支名 # 如 git checkout feature/login
# 简写(创建并切换):git checkout -b 新分支名查看所有分支:
1
git branch -v
2. 合并分支
- 合并分支到当前分支(如将
feature/login合并到main):1
2git checkout main # 先切换到目标分支
git merge feature/login
三、远程协作:与 GitHub/GitLab 同步
1. 关联远程仓库
- 添加远程仓库(将本地仓库与 GitHub 仓库关联):
1
git remote add origin https://github.com/你的用户名/仓库名.git
- 查看已关联的远程仓库:
1
git remote -v
2. 推送与拉取代码
- 推送本地分支到远程:
1
2git push -u origin main # 首次推送,-u 绑定本地与远程分支
git push # 后续直接推送 - 拉取远程代码到本地:
1
git pull origin main # 拉取远程 main 分支到本地
3. 克隆远程仓库到本地
- 从远程仓库下载完整项目:
1
git clone https://github.com/你的用户名/仓库名.git
四、常用辅助命令
1. 状态与日志
- 查看文件状态(已修改/已暂存/未跟踪):
1
git status
- 查看提交历史:
1
git log
2. 撤销操作
- 撤销工作区修改(回到最近一次
git add或git commit状态):1
git checkout -- 文件名 # 如 git checkout -- main.js
- 撤销暂存区文件(从暂存区移除,回到工作区):
1
git reset 文件名
五、新手常见问题处理
1. 提交后发现遗漏文件
1 | git add 遗漏的文件 |
2. 分支合并冲突
- 合并时若提示冲突,需先手动修改冲突文件,再执行:
1
2git add 冲突文件
git commit -m "解决合并冲突"
仓库换绑
要将已绑定 GitHub 仓库的本地文件夹换绑到另一个仓库,可按以下步骤操作:
步骤 1:查看当前远程仓库配置
先确认本地仓库当前绑定的远程仓库地址:
1 | git remote -v |
输出类似:
1 | origin https://github.com/old-user/old-repo.git (fetch) |
步骤 2:更换远程仓库(二选一)
根据需求选择直接修改地址或先删除再添加(推荐直接修改,操作更简洁)。
方法 A:直接修改远程地址(推荐)
使用 git remote set-url 命令,将现有远程(默认名为 origin)的地址替换为新仓库地址:
1 | git remote set-url origin https://github.com/new-user/new-repo.git |
- 替换
https://github.com/new-user/new-repo.git为新仓库的 HTTPS 地址(也可使用 SSH 地址,如git@github.com:new-user/new-repo.git)。
方法 B:先删除旧远程,再添加新远程
如果想完全重置远程配置,可先删除旧远程,再添加新远程:
1 | # 1. 删除旧远程(默认名为 origin) |
步骤 3:验证新远程配置
再次查看远程信息,确认地址已更新:
1 | git remote -v |
输出应显示新仓库的地址:
1 | origin https://github.com/new-user/new-repo.git (fetch) |
步骤 4:推送代码到新仓库
如果新仓库是空仓库(无任何提交),直接推送所有分支和标签:
1 | # 推送当前分支(如 main)并设置 upstream |
如果新仓库已有内容(如初始化的 README),需先拉取并合并(避免冲突):
1 | git pull origin main --allow-unrelated-histories # 合并远程历史(若提示冲突需手动解决) |
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
Comments