每个 QA 工程师都应该知道的 20 个 Git 基本命令

本文列出了 QA 人员/开发人员应该了解的最基本的命令,以便在高层次上掌握 GitHub 存储库的管理。

在本文中,我们将讨论 Git。Git 是一个版本控制系统,一个跟踪代码更改并与他人共享这些更改的工具。本文列出了 QA 人员/开发人员应该了解的最基本的命令,以便在高层次上掌握 GitHub 存储库的管理。再次复习基本的日常命令对初学者和有经验的用户都有用。

图片[1]-每个 QA 工程师都应该知道的 20 个 Git 基本命令-玩转网 | 902D.Com

在 Git 中设置用户名

需要用户名才能将提交绑定到您的名字。这与用于登录 GitHub 配置文件的 GitHub 帐户用户名不同。git config您可以使用命令设置或更改用户名。新名称将自动显示在通过命令行推送的后续提交中。

git config --global user.name "Michael Scott"

您还可以使用命令更改与您的 git 提交关联的电子邮件地址git config。新的电子邮件地址将自动显示在所有通过命令行提交到 GitHub 的未来提交中。

git config --global user.email "michael.scott@dundermifflin.com"
凭据缓存

可以使用带有标志的config选项来缓存凭据。–global这有助于您在创建新提交时无需手动输入用户名和密码。有助于将密码临时存储在内存中。

git config --global credential.helper cache
设置存储库

创建一个空的 Git 存储库或重新初始化一个现有的。执行git init会在当前工作目录中创建一个 .git 子目录,其中包含新存储库所有必需的 Git 元数据。此元数据包括对象、引用和模板文件的子目录。

git init
将文件添加到暂存区

该git add命令将工作目录中的新文件或更改的文件添加到 Git 暂存区。

添加somefile:

git add somefile.js

添加所有文件:

git add .
回购状态检查

该git status命令显示工作目录和暂存区的状态。它可以让您查看哪些更改已暂存,哪些尚未暂存,以及哪些文件未被 Git 跟踪。

git status
拍摄变化快照

记录对存储库的更改。此命令用于将更改保存到本地存储库。它可以与一些 git 键一起使用,例如:

– m向您的提交添加一条消息
– a将所有文件暂存到您的提交
–amend使用任何当前暂存的更改或新的提交消息重写最后一次提交

git commit -m "Commit message"git commit --amendgit commit --amend -m "New message"
检查 Git 历史

显示提交日志。此外,作为 Git 用户,您可以通过向git log命令添加一些键以更高级的方式使用该git log命令。

git log

使用oneline标志将每个提交显示为一行:

git log --oneline

shortlog按作者对每个提交进行分组并显示每个提交消息的第一行:

git shortlog

该–graph选项绘制一个 ASCII 图,表示提交历史的分支结构。这通常–oneline与–decorate命令结合使用,以便更容易地查看哪个提交属于哪个分支:

git log --graph --oneline --decorate

您还可以限制提交日志输出的次数:

git log -5

支持过滤 git 历史记录,例如按日期、作者、文件或消息:

git log --after="yesterday" --before="2022-10-10"git log --author="Michael"git log -- somefile.jsgit log -S "fix"
显示变化

git diff显示提交、提交和工作树之间的变化。

git diff

指定文件名以显示其文件正在进行的更改:

git diff somefile.js

显示分支 master 和 develop 之间的变化:

git diff master..develop
文件重命名

您可以使用命令重命名文件或文件夹mv。您应该指定源路径和目标路径。源是实际文件或文件夹,目标是现有文件夹。

git mv directory1/somefile.js directory
分支特征

一个分支代表一条独立的开发线。分支作为编辑/暂存/提交过程的抽象。该git branch命令允许您创建、列出、重命名和删除分支。

要创建一个新分支:

git branch branch_name

您也可以将一些键传递给git branch命令:

git branch -m <branch>重命名当前分支
git branch -d <branch>删除本地分支
git push origin –delete <branch>将更改推送到远程通知删除分支到远程原始存储库(需要与上一个命令一起使用)
git branch -a显示所有分支的列表

撤消文件更改

git restore命令有助于取消暂存甚至丢弃未提交的本地更改。该命令可用于撤消您之前添加的 git add 和 unstage 更改的影响。它还可用于丢弃文件中的本地更改,从而恢复其上次提交的状态。

git restore somefile.jsgit restore --staged index.js
使用远程命令

git remote管理一组被跟踪的远程存储库。

显示所有远程连接的列表:

git remote -v

要更改远程 URL:

git remote set-url <url> <new_url>

要重命名当前连接,可以使用下一个命令:

git remote rename <old_name> <new_name>

要删除连接:

git remote remove <remote_name>
将更改保存到剪贴板

git stash将更改隐藏在脏工作目录中。此命令获取您未提交的更改(暂存的和未暂存的)并将它们保存起来以备后用。

git stash

可以将几个键添加到命令中:

git stash隐藏跟踪文件
git stash -u隐藏未跟踪的文件
git stash -a隐藏所有文件(包括忽略的文件)
stash命令将您的更改保存到某种更改列表中,您可以使用以下方法访问它:

git stash list

此外,您可以向您的藏匿处添加一条消息,使用git stash save “message”命令对其进行注释:

git stash save "some comment"

此外,它还支持查看存储差异:

git stash show

要应用存储保存的更改(它将应用存储列表中的最后一个存储):

git stash apply

并能够清除所有藏匿处:

git stash clear
标记

git tag标记存储库历史记录中的特定点。

git tag v1.1

要访问标签列表,请使用git tag -l. 要删除,只需传递特定的 key git tag -d v1.0。列出远程标签:git ls-remote –tags. 要重新标记(现有标记的重命名),只需使用 force key: 发送git tag -f v1 v1.1,在这种情况下我们v1使用 new重命名v.1.1。

获取最新的远程更改

要获取本地的最新更改,有两个 git 命令:git pull和git fetch. 它们之间的主要区别在于git fetch将下载远程内容但不会更新本地存储库的工作状态,从而使您当前的工作保持不变。我个人使用git fetch带键的命令–prune,这是清理过时分支的最佳实用程序。在获取之前,删除遥控器上不再存在的任何远程跟踪引用。git pull相反,将为活动的本地分支下载远程内容,并立即执行合并到您的文件。也git pull可以与 rebase 公共键一起使用:git pull -r拉和变基。

撤消更改并恢复丢失的提交

git cherry-pick用于此目的。git 中的 Cherry-picking 意味着您从一个分支中选择一个提交并将其应用到另一个分支。通常在开发团队中,这用于发布阶段的快速错误修复(修补程序),或者当需要应用未合并的提交时。要使用此命令,您应该通过提交 sha。

撤消上次提交

在 git 中,有两种方法可以撤消最后的更改:git revert和git reset. git revert命令创建一个新的提交,撤消先前提交的更改。此命令向项目添加新的历史记录。git reset用于撤消工作目录中尚未提交的更改。重置命令可以与参数–soft, –mixed,一起使用–hard。默认情况下,Git 使用 reset with –mixedkey (uncommit + unstage changes)。开发人员经常使用的是–hard选项(uncommit + unstage + delete changes)。当通过–hard提交历史 ref 指针时,将更新为指定的提交。–soft如果您想取消提交更改,这是一种更准确的方法,在这种情况下,更改将暂存。

例如,要在 git 上将文件硬重置为 HEAD:

git reset --hard HEAD
在提交或分支之间切换

git checkout使用命令。您可以在提交和分支之间切换,只需将 branch_name/commit_sha 传递给git checkout命令即可。此外,您可以使用 checkout 命令创建新的不存在的分支,它将创建新分支并切换到它:

git checkout -b new_branch

要检查一些提交,其中 5939515 是提交 sha:

git checkout 5939515
找到破坏某些东西的提交

git bisect是你的朋友——Git 中一个非常强大的命令,它有很大帮助。它用于将两个提交指向边缘情况,然后重新传递这两个点之间的所有提交历史记录(如果存在某些特定的失败,则逐个提交标记)。要使用,首先,您应该开始使用工具进行初始化:

git bisect start

然后我们应该将两个边缘情况标记为坏点和好点:

git bisect badgit checkout commitgit bisect good

通过提交你可以很容易地找到错误的提交,可能引入了一些错误/错误。

显示谁对所选文件进行了更改

git blame命令用于此。主要目的是显示所选文件的日志,显示谁以及何时对此文件进行了更改。

git blame somefile.js

这将显示对该文件所做的提交、作者、日期和提交消息的列表。该命令可用于传递一些键,例如-e在日志中显示作者的电子邮件地址,-L 1-7以限制和仅显示 7 行输出。git blame和之间的主要区别在于git log,blame可以告诉您最后修改每行代码的人是谁以及何时。

© 版权声明

THE END

点赞228赞赏 分享