git基础命令
# 配置用户信息
git config --global user.name "Your Name"
git config --global user.email "youremail@example.com"
# 初始化一个新的 Git 仓库
git init
# 克隆一个仓库
git clone <repository-url>
# 添加文件到暂存区
git add <filename>
git add . # 添加当前目录下的所有更改
# 提交更改
git commit -m "Commit message"
# 查看状态
git status
# 查看提交历史
git log
# 创建新分支
git branch <branchname>
# 切换分支
git checkout <branchname>
git switch <branchname> # Git 2.23 及更高版本
# 创建新分支并切换到该分支
git checkout -b <branchname>
git switch -c <branchname> # Git 2.23 及更高版本
# 合并分支
git merge <branchname>
# 删除分支
git branch -d <branchname> # 删除本地分支
git push origin --delete <branchname> # 删除远程分支
# 拉取远程仓库的变化并合并
git pull origin <branchname>
# 推送本地分支到远程仓库
git push origin <branchname>
# 设置远程仓库的URL
git remote add origin <repository-url>
# 查看远程仓库
git remote -v
# 撤销工作目录中的更改
git checkout -- <filename>
# 撤销暂存区的更改
git reset HEAD <filename>
# 重置到某个提交
git reset --hard <commit>
# 查看所有分支(本地和远程)
git branch -a
# 查看更改(未暂存)
git diff
# 查看暂存区和最后一次提交的差异
git diff --cached
# 强制推送
git push origin <branchname> --force
git创建项目流程
1. 在 GitHub 上面创建项目
正确。你在 GitHub 上创建一个新的仓库,并获取该仓库的 Git URL,这个 URL 用于之后的克隆(clone)和推送(push)操作。
2. 初始化本地仓库并设置主分支名
这一步有一点需要调整。通常,你会先克隆远程仓库到本地,然后根据需要调整分支名称。以下是一个更加标准的流程:
- 克隆远程仓库到本地:
git clone <repository-url>
- 进入仓库目录:
cd <repository-name>
- 如果需要,更改主分支名称(假设远程主分支已经是
main
,这一步可以跳过):git branch -M main
3. 推送到远程仓库
在你进行本地更改(例如,使用 git add .
和 git commit -m "Initial commit"
)后,使用 git push -u origin main
将更改推送到远程的 main
分支。这里 -u
参数用于设置默认推送,之后你可以仅使用 git push
或 git pull
来推送或拉取更改,但是每一次都是这个分支。
4. 在 GitHub 上创建新的分支 dev
本地创建一个dev分支,然后推送到 GitHub。以下是在本地创建并推送新分支的步骤:
- 创建并切换到新分支
dev
:git checkout -b dev
- 推送
dev
分支到远程仓库:git push -u origin dev
5. 成员克隆仓库并切换到 dev
分支
成员克隆整个仓库,而不是单独的分支。克隆后,可以切换到 dev
分支进行开发:
git clone <repository-url>
git checkout dev
6. 推送更改到 dev
分支
成员在本地进行更改后,使用 git add .
和 git commit -m "commit message"
提交更改,然后使用 git push
(第一次使用 git push -u origin dev
设置上游分支)推送更改到远程的 dev
分支。
7. 合并 dev
分支到 main
分支
合并分支通常涉及到以下步骤:
- 首先,切换回
main
分支:git checkout main
- 然后,将
dev
分支的更改合并到main
:git merge dev
- 如果合并成功且没有冲突,将合并后的更改推送到远程的
main
分支:git push origin main