数据科学家必备的14条Git命令

97 阅读5分钟

14 Essential Git Commands for Data Scientists
图片来源:RealToughCandy.com

从历史上看,大多数数据科学家并不了解软件开发实践和工具,如版本控制系统。但是,这种情况正在改变,数据科学项目正在采用软件工程的最佳实践,而Git已经成为文件和数据版本控制的一个重要工具。现代数据团队使用它来协作代码库项目并更快地解决冲突。

在这篇文章中,我们将学习14个基本的Git命令,这些命令将帮助你初始化一个项目,创建和合并分支,对文件进行版本管理,与远程服务器同步并监控变化。

**注意:**请确保你已经从官方网站上正确安装了Git。

1.初始化

你可以在当前目录下通过键入来初始化Git版本控制系统。

git init

或者可以在特定的目录下初始化Git。

git init <directory>

initialize Git in a specific directory

2.克隆

克隆 命令将所有项目文件从远程服务器复制到本地机器上。它还会添加一个远程名称作为`source',以便与远程服务器同步文件。

Git 克隆需要 HTTPS 链接,安全连接需要 SSH 链接。

git clone <HTTPS/SSH>

3.添加远程

你可以通过添加远程的名称和HTTPS/SSH地址来连接单个或多个远程服务器。

git remote add <remote name> <HTTPS/SSH>

**注意:**从GitHub或任何远程服务器克隆一个仓库,会自动将远程添加为 "源"。

4.创建分支

分支是开发新功能或调试代码的最佳方式。它允许你在不干扰 "主 "分支的情况下单独工作。

使用checkout 命令创建一个新的分支,使用 `-b` 标签和分支名称。

git checkout -b <branch-name>

或者使用带有`-c`标签和分支名的switch

git switch -c <branch-name>

或者直接使用分支命令

git branch <branch-name>

Create Git Branch

5.切换分支

要把一个分支从当前分支切换到另一个分支,可以使用checkoutswitch命令,后面加上分支名称。

git checkout <branch-name>

git switch <branch-name>

6.拉取

为了与远程服务器同步变化,我们需要首先使用pull命令将远程的变化拉到本地版本库。当在远程版本库中进行修改时,就需要这样做。

git pull

你可以在远程名称后面加上一个分支名称来拉动一个分支。

git pull <remote name> <branch> 

默认情况下,pull 命令会获取更改,并将其与当前分支合并。如果要重新定位,而不是合并,你可以在远程名称和分支前添加`--rebase`标志。

git pull --rebase origin master

7.添加

使用add 命令将文件添加到暂存区域。它需要文件名或文件名的列表。

git add <file-name>

你也可以使用`.`或`-A`标志添加所有文件。

git add .

8.提交

在添加文件到暂存区域后,你可以使用提交 命令来创建一个版本。

提交命令需要使用`-m`标志来说明提交的标题。如果你做了多个修改并想把它们都列出来,可以用另一个`-m`标志把它们加到描述中。

git commit -m "Title" -m "Description"

Git Commit

注意:在提交修改之前,请确保你已经配置了你的用户名电子邮件

git config --global user.name <username>

git config --global user.email <youremail@yourdomain.com>

9.推送

使用推送 命令将本地修改同步到远程服务器。你可以简单地输入`git push`来推送修改到远程仓库。

对于推送变化到一个特定的远程服务器和分支,使用下面的命令。

git push <remote name> <branch-name>

10.撤销提交

Gitrevert可以撤销对某个特定提交的修改,并将其作为新的提交添加,同时保持日志的完整性。要撤销,你需要提供一个特定提交的哈希值。

git revert <commit>

你也可以用reset命令来撤消改动。它将改动重置到一个特定的提交,并放弃之后所有的提交。

git reset <commit>

**注意:**不鼓励使用reset命令,因为它会修改你的git日志历史。

11.合并

合并命令会简单地将特定分支的修改合并到当前分支。该命令需要一个分支名。

git merge <branch>

当你在处理多个分支,并希望将改动合并到主分支时,这个命令就非常方便了。

12.日志

要检查以前提交的完整历史,可以使用log命令。

要显示最近的日志,可以在数字后面加上"-",它将显示有限数量的最近提交历史。

例如,将日志限制在5条。

git log -5

你也可以检查特定作者的提交。

git log --author=”<pattern>”

**注意:**git log有多个标志来过滤掉特定类型的提交。请查看完整的文档

Git log

13.差异

使用diff 命令将显示未提交的修改与当前提交的比较。

git diff

要比较两个不同的提交,请使用:

git diff <commit1> <commit2>

而对于比较两个分支,则使用:

git diff <branch1> <branch2>

14.状态

status命令显示工作目录的当前状态。它包括将要提交的修改、未合并的路径、未分阶段提交的修改以及未跟踪的文件列表等信息。

git status

**注:**请查看Github和Git初学者教程,了解更多关于数据科学中的版本控制系统。