Git 常用命令大全

初始化与克隆仓库

git init:在当前目录初始化一个新的 Git 仓库。
git clone <repository_url>:克隆远程仓库到本地。

配置用户信息

git config --global user.name "Your Name":设置全局用户名。
git config --global user.email "your.email@example.com":设置全局邮箱。

分支操作

git branch:列出所有本地分支。
git branch <branch_name>:创建新分支。
git checkout <branch_name>:切换到指定分支。
git checkout -b <branch_name>:创建并切换到新分支。
git merge <branch_name>:将指定分支合并到当前分支。
git branch -d <branch_name>:删除本地分支。

提交与状态查看

git status:查看当前工作区和暂存区的状态。
git add <file>:将文件添加到暂存区。
git add .:将所有修改的文件添加到暂存区。
git commit -m "commit message":提交暂存区的更改并添加提交信息。
git commit --amend:修改最近一次提交的信息或内容。

远程仓库操作

git remote -v:查看远程仓库信息。
git remote add <name> <url>:添加远程仓库。
git push origin <branch_name>:将本地分支推送到远程仓库。
git pull origin <branch_name>:拉取远程分支的更新并合并到当前分支。
git fetch:从远程仓库获取最新信息但不合并。

撤销与回退

git reset --hard <commit_hash>:回退到指定提交,丢弃所有更改。
git revert <commit_hash>:撤销指定提交的更改并生成新的提交。
git checkout -- <file>:撤销文件的本地修改。

日志与差异查看

git log:查看提交历史。
git log --oneline:查看简洁的提交历史。
git diff:查看工作区与暂存区的差异。
git diff --cached:查看暂存区与最新提交的差异。


GitLab 使用方法

项目创建与管理

在 GitLab 中创建新项目:
登录 GitLab,点击“New Project”,选择创建空白项目或从模板创建。
设置项目名称、可见性(私有/公开)和描述。

分支保护与合并请求

在项目设置中启用分支保护:
进入“Settings” > “Repository” > “Protected Branches”,选择需要保护的分支(如 mainmaster)。
合并请求(Merge Request)流程:
在分支开发完成后,点击“New Merge Request”,选择源分支和目标分支,填写描述并提交。
团队成员可审核代码并通过合并请求。

CI/CD 流水线配置

在项目根目录创建 .gitlab-ci.yml 文件,定义流水线阶段:

stages:
  - build
  - test
  - deploy

build_job:
  stage: build
  script:
    - echo "Building the project"

test_job:
  stage: test
  script:
    - echo "Running tests"
问题跟踪与 Wiki

使用 GitLab Issues 跟踪任务或缺陷:
点击“Issues” > “New Issue”,填写标题、描述和标签。
利用 Wiki 功能编写项目文档:
点击“Wiki” > “Create New Page”,使用 Markdown 编写内容。

权限与协作

项目成员管理:
进入“Settings” > “Members”,添加用户并分配角色(如 Developer、Maintainer)。
通过“Snippets”共享代码片段:
点击“Snippets” > “New Snippet”,填写标题和代码内容。


高级 Git 命令

储藏与恢复

git stash:储藏当前工作区的修改。
git stash pop:恢复最近储藏的修改。

子模块管理

git submodule add <repository_url>:添加子模块。
git submodule update --init --recursive:初始化并更新子模块。

标签操作

git tag:列出所有标签。
git tag -a <tag_name> -m "message":创建带注释的标签。
git push origin --tags:推送所有标签到远程仓库。

重写历史

git rebase <branch>:将当前分支的提交变基到目标分支。
git rebase -i <commit_hash>:交互式变基,合并或修改提交历史。

通过掌握这些命令和 GitLab 功能,可以高效管理代码版本和团队协作。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐