前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Git 常见命令及其命令组合

Git 常见命令及其命令组合

原创
作者头像
GeekLiHua
发布2024-08-22 19:11:46
510
发布2024-08-22 19:11:46
举报
文章被收录于专栏:git小工具

Git 常见命令及其命令组合

Git 基础命令

初始化仓库

  • git init 案例: 假设你开始一个新项目,首先在项目目录下打开终端,运行 git init 来初始化一个新的 Git 仓库。

查看状态

  • git status 案例: 运行 git status 可以查看当前目录下哪些文件被修改了,哪些文件已经添加到暂存区,哪些文件还没有跟踪。

添加文件

  • git add <file> 案例: 你修改了 README.md 文件,然后运行 git add README.md 将更改添加到暂存区。
  • git add . 案例: 如果你修改了多个文件,可以使用 git add . 将所有修改过的文件添加到暂存区。

提交更改

  • git commit -m "commit message" 案例: 暂存区准备好后,运行 git commit -m "Initial commit" 来提交更改,其中 "Initial commit" 是提交信息。

查看提交历史

  • git log 案例: 运行 git log 查看所有的提交记录,包括提交的作者、时间、以及提交的哈希值。
  • git log --oneline 案例: 如果你想要一个更简洁的视图,可以使用 git log --oneline 来显示每次提交的简短信息。
  • git reset HEAD <file> 案例: 如果你想要撤销 README.md 文件的暂存更改,可以使用 git reset HEAD README.md
  • git checkout -- <file> 案例: 如果你想要撤销 README.md 文件在工作目录中的更改,可以使用 git checkout -- README.md 来丢弃这些更改。

推送与拉取案例演示

推送更改

  • git push 案例: 你完成了本地的一系列更改,并且已经提交。现在你想将这些更改推送到远程仓库,可以运行 git push 命令。
  • git push <remote> <branch> 案例: 假设你正在处理master分支 ,并且想要推送这个分支的更改到远程仓库,你可以运行 git push origin master

拉取更改

  • git pull 案例: 当你想要更新你的本地仓库以包含远程仓库的最新更改时,可以运行 git pull 来拉取并自动合并到当前分支。
  • git pull <remote> <branch> 案例: 如果你想要拉取远程仓库中 origindevelop 分支的更改,可以运行 git pull origin develop

强制推送

  • git push --force 案例: 如果你已经决定重写历史并且远程仓库的某些提交需要被覆盖,你可以使用 git push --force 来强制推送你的更改。
  • git push --force-with-lease 案例: 这是一个更安全的强制推送选项。假设你正在推送到一个多人协作的仓库,使用 git push --force-with-lease 可以避免在远程分支有新提交时覆盖它们。

拉取合并

  • git pull --rebase 案例: 当你想要拉取远程更改并且保持一个干净、线性的提交历史时,可以使用 git pull --rebase。例如,当你在 feature-x 分支工作并想要集成最新的 master 分支更改时,可以运行 git pull --rebase origin master

强制推送注意事项

  • 使用 git push --forcegit push --force-with-lease 时要非常小心,因为这可能会影响其他协作者的更改。

拉取合并与变基

  • 使用 git pull --rebase 可以避免在历史中产生不必要的合并提交,使得项目的历史更加清晰。

拉取合并

  • git pull --rebase: 使用变基的方式拉取远程更改,避免产生合并提交。

分支管理案例

创建分支

  • git branch <branch-name> 案例: 假设你正在 master 分支上工作,想要开始一个新的功能开发。你可以运行 git branch feature-login 来创建一个名为 feature-login 的新分支。
  • git checkout -b <branch-name> 案例: 如果你希望创建新分支并立即切换到该分支,可以使用 git checkout -b feature-login。这将创建 feature-login 分支并自动切换到该分支。

切换分支

  • git checkout <branch-name> 案例: 你已经在 feature-login 分支上工作了一段时间,现在想要切换回 master 分支。运行 git checkout master 即可切换。

删除分支

  • git branch -d <branch-name> 案例: 假设你已经完成了 feature-login 分支的开发并将其合并回 master,现在想要删除这个本地分支。可以使用 git branch -d feature-login
  • git push <remote> --delete <branch-name> 案例: 如果你还想从远程仓库中删除 feature-login 分支,可以运行 git push origin --delete feature-login

查看分支

  • git branch 案例: 运行 git branch 可以查看本地所有分支,其中当前分支会以星号 (*) 标记。
  • git branch -r 案例: 运行 git branch -r 可以显示所有远程分支。
  • git branch -a 案例: 运行 git branch -a 可以显示所有本地和远程分支。

合并分支案例

合并分支

  • git merge <branch-name> 案例: 假设你完成了 feature-login 分支的开发并希望将其合并到 master 分支。首先切换到 master 分支,然后运行 git merge feature-login

合并冲突

  • 案例: 如果在合并过程中出现冲突,Git 会停止合并并让你手动解决。例如:
    1. 运行 git status 查看哪些文件有冲突。
    2. 编辑冲突文件,解决冲突。
    3. 运行 git add <resolved-file> 将解决后的文件添加到暂存区。
    4. 运行 git commit 提交解决冲突后的更改。

变基合并

  • git rebase <branch-name> 案例: 假设你想要将 feature-login 分支的更改应用到最新的 master 分支上,可以使用 git rebase master 命令。
  • git rebase --continue 案例: 如果在变基过程中遇到冲突,解决冲突后,运行 git rebase --continue 继续变基操作。
  • git rebase --abort 案例: 如果变基过程中出现问题,你决定放弃变基,可以使用 git rebase --abort 恢复到变基前的状态。

合并策略

  • git merge --no-ff <branch-name> 案例: 如果你想要保留分支历史,即使 master 分支已经是最新的,也可以使用 git merge --no-ff feature-login 进行非快进合并。

标签管理案例

创建标签

  • git tag <tag-name> 案例: 假设你完成了一个重要的发布版本,可以运行 git tag v1.0 来创建一个轻量标签。
  • git tag -a <tag-name> -m "tag message" 案例: 如果你想要创建一个带注释的标签,可以使用 git tag -a v1.0 -m "Release version 1.0"

推送标签

  • git push <remote> <tag-name> 案例: 运行 git push origin v1.0 将标签推送到远程仓库。
  • git push <remote> --tags 案例: 运行 git push origin --tags 可以推送所有本地标签到远程仓库。

删除标签

  • git tag -d <tag-name> 案例: 如果你想要删除本地标签,可以使用 git tag -d v1.0
  • git push <remote> :refs/tags/<tag-name> 案例: 运行 git push origin :refs/tags/v1.0 可以删除远程仓库中的标签。

远程仓库操作案例

克隆仓库

  • git clone <repository-url> 案例: 运行 git clone https://github.com/user/repo.git 将远程仓库克隆到本地。

远程仓库列表

  • git remote -v 案例: 运行 git remote -v 可以查看远程仓库的详细信息,包括仓库的 URL。

添加远程仓库

  • git remote add <remote-name> <url> 案例: 如果你想要添加一个新的远程仓库,可以使用 git remote add upstream https://github.com/otheruser/repo.git

远程仓库别名

  • git remote rename <old-name> <new-name> 案例: 如果你想要修改远程仓库的别名,可以使用 git remote rename origin new-origin

远程仓库URL

  • git remote set-url <remote-name> <new-url> 案例: 如果远程仓库的 URL 发生变化,可以使用 git remote set-url origin https://github.com/user/new-repo.git 更新 URL。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Git 常见命令及其命令组合
    • Git 基础命令
      • 初始化仓库
      • 查看状态
      • 添加文件
      • 提交更改
      • 查看提交历史
    • 推送与拉取案例演示
      • 推送更改
      • 拉取更改
      • 强制推送
      • 拉取合并
      • 强制推送注意事项
      • 拉取合并与变基
      • 拉取合并
    • 分支管理案例
      • 创建分支
      • 切换分支
      • 删除分支
      • 查看分支
    • 合并分支案例
      • 合并分支
      • 合并冲突
      • 变基合并
      • 合并策略
    • 标签管理案例
      • 创建标签
      • 推送标签
      • 删除标签
    • 远程仓库操作案例
      • 克隆仓库
      • 远程仓库列表
      • 添加远程仓库
      • 远程仓库别名
      • 远程仓库URL
相关产品与服务
短信
腾讯云短信(Short Message Service,SMS)可为广大企业级用户提供稳定可靠,安全合规的短信触达服务。用户可快速接入,调用 API / SDK 或者通过控制台即可发送,支持发送验证码、通知类短信和营销短信。国内验证短信秒级触达,99%到达率;国际/港澳台短信覆盖全球200+国家/地区,全球多服务站点,稳定可靠。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档