当前位置: 首页 > 科技观察

使用Git帮助作家更好地完成他们的工作

时间:2023-03-13 14:59:45 科技观察

如果您是一名作家,您也可以从使用Git中受益。在我们的系列文章中了解Git鲜为人知的用途。Git是将如此多的现代计算封装到一个程序中的罕见应用程序之一,该程序可以作为许多其他应用程序的计算引擎。虽然它以跟踪软件开发中的源代码更改而闻名,但它还有许多其他用途,可以让您的生活更轻松、更有条理。在这个Git系列中,我们将分享七种鲜为人知的Git使用方法。今天我们来看看作家如何使用Git来更好地完成他们的工作。作家的Git有些人写小说,有些人写学术论文、诗歌、剧本、技术手册或关于开源的文章。很多人都在做某种写作。同样,如果您是一名作家,您可能会从使用Git中获益。尽管Git是著名计算机程序员使用的技术性很强的工具,但它也是现代作家的理想选择,本文将向您展示如何改变写作方式以及原因。但是,在谈论Git之前,重要的是先谈谈什么是“副本”(或数字时代的“内容”),以及为什么它与您的交付媒介不同。现在是21世纪,大多数作家的首选工具是电脑。虽然计算机似乎擅长将复制编辑和布局等过程结合在一起,但作家已经(重新)发现将内容与风格分开是个好主意。这意味着您应该像在打字机而不是文字处理器上一样在计算机上书写。用计算机术语来说,这意味着以纯文本形式书写。用纯文本写作的假设过去是毋庸置疑的:你知道你正在写作的市场,你可以为不同的市场写作,比如书籍、网站或软件手册。然而,最近各种市场都趋于平缓:您可能决定在印刷书籍中使用为您的网站编写的内容,并且印刷书籍可能会在以后作为EPUB版本发布。当涉及到您的内容的数字版本时,读者最终拥有控制权:他们可以在您发布文本的网站上阅读您的文本,他们可以单击进入Firefox出色的阅读视图,他们可以打印到纸上,或者他们可以使用Lynx将网页转储到文本文件中,甚至可能根本无法看到您的内容,因为您使用的是屏幕阅读器。您只需要逐字编写您的内容,然后将交付交给发布者。即使您自己发布,将文字作为您写作的一种源代码也是一种更智能、更有效的方式,因为当您发布时,您可以使用相同的源(您的纯文本)生成您自己的目标输出(用于印刷的PDF、用于电子书的EPUB、用于网站的HTML等)。以纯文本编写不仅意味着您不必担心布局或文本样式,而且还消除了对专用工具的需求。无论是手机或平板电脑上的基本记事本应用程序、计算机附带的文本编辑器,还是您从Internet下载的免费编辑器,任何生成文本内容的东西都是您有效的“文字处理工具”。设备”。无论您身在何处或在做什么,您几乎都可以在任何设备上书写,生成的文本无需修改即可与您的项目无缝集成。此外,Git旨在管理纯文本。AtomEditor文字处理程序当你用纯文本书写时,你会感到不知所措。使用文本编辑器更容易,因为文本编辑器不会尝试“有效地”重组输入。它允许你在不中断的情况下将脑海中的单词输入屏幕更妙的是,文本编辑器通常是围绕插件架构设计的,因此应用程序本身是基本的(用于编辑文本),但您可以围绕它构建一个环境以满足您的各种需求。Atom编辑器就是一个很好的例子这种设计理念。这是一个跨平台的文本编辑器,内置Git集成。如果您不熟悉纯文本和Git,Atom是最简单的入门方法。安??装Git和Atom首先,确保您有Git安装在你的系统。如果运行Linux或BSD,Git在软件存储库或端口树中可用。您使用的命令会因您的发行版而异。例如在Fedora上:$sudodnfinstallgit您还可以下载并安装适用于Mac和Windows的Git。您不需要直接使用Git,因为Atom将充当您的Git接口。下一步是安装Atom。如果您使用的是Linux,请通过软件安装程序或适当的命令从软件存储库安装Atom,例如:$sudodnfinstallatomAtom当前未构建在BSD上。然而,有很好的替代品,例如GNUEmacs。对于Mac和Windows用户,可以在Atom网站上找到安装程序。安装完成后,启动Atom编辑器。快速指南如果你想使用纯文本和Git,你需要调整你的编辑器。Atom的用户界面可能比您习惯的更加动态。事实上,你可以把它想象成Firefox或Chrome,而不是文字处理器,有可以根据需要打开和关闭的选项卡和面板,甚至可以安装和配置附加组件。试图掌握Atom的所有功能是不切实际的,但您至少可以了解其中的内容。当Atom打开时,它会显示一个欢迎屏幕。如果不出意外,这个屏幕很好地介绍了Atom的选项卡式界面。您可以通过单击Atom窗口顶部选项卡上的关闭图标来关闭欢迎屏幕,并使用文件>新建文件创建一个新文件。使用纯文本与使用文字处理程序有点不同,因此这里有一些技巧,可以帮助您以人类可以理解的方式编写内容,并且Git和计算机可以解析、跟踪和转换。用Markdown写作如今,当人们谈论纯文本时,他们大多指的是Markdown。Markdown与其说是一种格式,不如说是一种风格,这意味着它旨在为文本提供可预测的结构,以便计算机可以检测自然模式并智能地转换文本。Markdown有很多定义,但最好的技术定义和备忘单在CommonMark的网站上。#Chapter1这是一个段落,其中有一个*斜体*字和一个**粗体**字。它甚至可以引用图像。![此处将呈现图像。](drawing.jpg)你可以从中看到它示例请注意,Markdown读起来不像代码,但您可以将其视为代码。如果您遵循CommonMark定义的Markdown规范,您可以可靠地将Markdown文本一键转换为.docx、.epub、.html、MediaWiki、.odt、.pdf、.rtf和其他各种格式,而不会丢失格式。你可以把Markdown想象成一个文字处理器。如果您曾经为一家出版社编写过一组样式来控制章节标题及其样式,那么它们基本上是一样的,只是您需要添加一些小勾号而不是从下拉菜单中选择样式你的文字。这些符号对于任何习惯于“用文字交谈”的现代读者来说都是自然而然的,但是当呈现文本时,它们会被花哨的文本样式所取代。事实上,这就是文字处理程序在后台秘密进行的工作。文字处理器显示粗体文本,但如果您能看到生成的使文本变粗的代码,它很像Markdown(实际上,它是更复杂的XML)。使用Markdown消除了代码和样式之间的这种障碍,一方面看起来有点可怕,但另一方面,你可以在几乎任何可以生成文本的东西上编写Markdown而不会丢失任何格式信息。Markdown文件的流行文件扩展名是.md。如果您使用的平台不知道什么是.md文件,您可以手动将该扩展名与Atom相关联,或者只使用通用的.txt扩展名。文件扩展名不会改变文件的性质。它只是改变了您的计算机决定如何处理它的方式。Atom和一些平台足够聪明,可以知道文件是纯文本,无论您给它什么扩展名。实时预览Atom有一个“Markdown预览”插件,可以向您显示您正在编写的纯文本Markdown以及它(通常)是如何呈现的。Atom的预览屏幕要激活此预览窗格,请选择Package>MarkdownPreview>TogglePreview或按Ctrl+Shift+M。此视图为您提供两全其美的体验。无需为文本设置样式而编写,您可以看到文本外观的通用示例,至少是典型的数字化格式。当然,重点是您无法控制文本最终将如何呈现,因此不要尝试调整Markdown以强制呈现的预览以某种方式显示。每行一句话你的高中写作老师不会读你的Markdown。一开始不太自然,但在数字世界中,每行一个句子更有意义。Markdown忽略单个换行符(当您按Return或Enter时),并且仅在单个空行之后创建一个新段落。在Atom中每行写一个句子的好处是您的工作更容易跟踪。也就是说,如果您更改段落开头的一个词,如果更改仅限于一行中的一个词而不是一个长段落,则Atom、Git或任何应用程序都可以轻松地以有意义的方式突出显示该更改。换句话说,对一个句子的更改只会影响该句子,而不会影响整个段落。您可能会想:“许多文字处理器也可以跟踪更改,并且它们可以突出显示已更改的单个单词。”但是这些修订跟踪器与文字处理器的界面相关联,这意味着您必须先打开修订跟踪器。需要文字处理器才能查看修订。在纯文本工作流程中,您以纯文本查看修订,这意味着无论您手头有什么,只要设备可以处理纯文本(大多数都可以),就可以进行编辑或批准。不可否认,作家通常不会考虑行号,但它们对计算机很有用,而且通常是一个很好的参考点。默认情况下,Atom对文本文档的行进行编号。一行是按Enter或Return后的一行。在Atom中书写如果一行(在Atom中)的行号中有一个点而不是数字,这意味着它是前一行折叠的一部分,因为它不在屏幕上。主题如果你是一个视觉型的人,你可能非常在意你的写作环境。即使您使用普通的Markdown编写,也不意味着您必须使用程序员的字体或在让您看起来像编码员的黑色窗口中编写。修改Atom外观的最简单方法是使用主题包。主题设计者通常会区分深色和浅色主题,因此您可以根据需要使用关键字“深色”或“浅色”进行搜索。要安装主题,请选择“编辑”>“首选项”。这将在Atom界面中打开一个新选项卡。是的,选项卡可用于处理文档以及用于配置和控制面板。在“设置”选项卡上,单击“安装”类别。在“安装”面板中,搜索要安装的主题的名称。单击搜索字段右侧的“主题”按钮以仅搜索主题。找到主题后,单击其安装按钮。Atom的主题要使用已安装的主题或根据您的喜好自定义主题,请导航至“设置”选项卡中的“主题”类别。从下拉菜单中选择您要使用的主题。更改会立即进行,因此您可以准确地看到主题如何影响您的环境。您还可以在“设置”选项卡的“编辑器”类别中更改工作字体。Atom默认使用等宽字体,这通常是程序员的首选字体。但是您可以在您的系统上使用任何字体,无论是衬线字体、无衬线字体、哥特体还是草书体。无论您想整天盯着什么字体。作为相关说明,默认情况下,Atom在其屏幕上绘制一条垂直线,以提醒编写代码的人。程序员一般都不想写长行代码,所以这条竖线提醒他们不要写长行代码。然而,垂直条对作者来说是没有意义的,你可以通过禁用“wrap-guide”包来删除它。要禁用“wrap-guide”包,请在“设置”选项卡中选择“Wrapping”类别并搜索“wrap-guide”。找到包后,单击其禁用按钮。在创建具有动态结构的长文档时,我发现每个文件写一章比将整本书写在一个文件中更有意义。此外,我不会使用明显的语法chapter-1.md或1.example.md来命名我的章节,而是使用章节标题或关键字(例如example.md)。为了给自己提供未来如何编写本书的指导,我维护了一个名为toc.md(“目录”)的文件,其中按(当前)顺序列出了各章。我这样做是因为,无论我多么相信第6章不太可能出现在第1章之前,在完成整本书之前我几乎不可避免地会调换一两章的顺序。我发现从一开始就保持动态有助于我避免重命名混乱,也有助于我避免僵化的结构。在Atom中使用Git每个作家都有两个共同点:他们写作是为了传播,他们的写作是一段旅程。你不能只是坐下来写一个最终稿。顾名思义,您有初稿。该草稿将被修订,您将小心保留每个修订版的一式两份或三份副本,以防您的文件被损坏。最后,您会得到所谓的最终草案,但很有可能有一天您会回到最终草案并修复好的部分或修复坏的部分。Atom最令人兴奋的特性是其强大的Git集成。无需离开Atom,您就可以与Git的所有主要功能交互、跟踪和更新项目、回滚您不喜欢的更改、集成来自协作者的更改等等。最好的学习方法是循序渐进地学习,因此这里介绍了如何在写作项目中从头到尾在Atom界面中使用Git。首先要做的事情:通过选择View>ToggleGitTab打开Git面板。这将在Atom界面的右侧打开一个新选项卡。现在没有什么可看的,所以暂时保持打开状态。设置Git项目您可以将Git视为绑定到一个文件夹。Git目录之外的任何文件夹都不知道Git,Git也不知道外面的世界。Git目录中的文件夹和文件将被忽略,直到您授予Git跟踪它们的权限。您可以通过在Atom中创建新的项目文件夹来创建Git项目。选择“文件”>“添加项目文件夹”并在您的系统上创建一个新文件夹。您创建的文件夹将出现在Atom窗口左侧的“项目窗格”中。Git添加文件右键单击??您的新项目文件夹并选择“新建文件”以在项目文件夹中创建一个新文件。如果要将文件导入新项目,请右键单击文件夹并选择“在文件管理器中显示”以在系统的文件查看器(Linux上的Dolphin或Nautilus、Windows上的MacFinder或Windows上的资源管理器)中打开文件夹,然后将文件拖放到项目文件夹中。在Atom中打开项目文件(您创建的空文件或导入的文件)后,单击Git选项卡中的“创建存储库”按钮。在弹出的对话框中,单击“Init”将您的项目目录初始化为本地Git存储库。Git会在项目文件夹中添加一个.git目录(在系统的文件管理器中不可见,但在Atom中可见)。不要被这个愚弄了:.git目录是由Git管理的,而不是由你管理的,所以通常你应该不要管它。但是在Atom中看到它是一个很好的提醒,表明您正在处理一个Git管理的项目。换句话说,当你看到一个.git目录时,你就有了修订历史。在你的空文件中,写点东西。你是一个作家,所以只要输入一些文字。随意输入任何一组单词,但请记住上面的写作技巧。按Ctrl+S保存文件,该文件将显示在Git选项卡的“UnstagedChanges”部分。这意味着该文件存在于您的项目文件夹中,但尚未提交给Git管理。通过单击Git选项卡右上角的“StageAll”按钮,允许Git跟踪这些文件。如果您使用过具有修订历史记录的文字处理器,则可以将此步骤视为允许Git记录更改。Git提交您的文件现在已暂存。这意味着Git知道该文件存在,并且自上次Git知道该文件以来它已经被更改。Git提交会将您的文件发送到Git的内部永久存档。如果您习惯于文字处理程序,这类似于命名修订。要创建提交,请在Git选项卡底部的“提交”消息框中输入一些描述性文本。你可能觉得含糊不清,或者写得乱七八糟,但如果你想知道以后修改的原因,输入一些有用的信息会更有用。第一次commit时,必须创建branch分支。Git分支有点像另一个空间,允许您从一个时间线切换到另一个时间线以进行您可能想要或可能不想永久保留的更改。如果您最终喜欢这个变化,您可以通过将一个实验分支合并到另一个实验分支来合并项目的不同版本。这是一个高级流程,不需要先学习,但是你仍然需要一个活跃的分支,所以你必须为你的第一次提交创建一个分支。单击Git选项卡最底部的“分支”图标以创建一个新分支。通常(但不一定)创建一个分支,命名第一个分支master;你可以称它为firstdraft或任何你喜欢的东西,但遵守当地习俗有时会使谈论Git(并找到问题的答案)变得更容易,因为你会知道当有人提到“master”时,他们真正的意思是“trunk”而不是“草稿”或您为分支命名的任何名称。在某些版本的Atom上,UI可能不会更新以反映您创建的新分支。别担心,在你提交之后,它会分支(并更新UI)。按“提交”按钮,无论它是“创建分离的提交”还是“提交到主”。提交后,文件的状态永久保留在Git的内存中。历史和Git差异一个自然而然的问题是您应该多久提交一次。没有正确答案。使用Ctrl+S保存文件和提交到Git是两个独立的过程,因此您将一直在做这两个过程。任何时候当你觉得自己已经做了一些重要的事情或者你即将尝试一个可能会被扼杀的疯狂新想法时,你可能想要做出承诺。要查看提交如何影响您的工作流程,请从您的测试文档中删除一些文本,然后在顶部和底部添加一些文本。再次提交。这样做几次,直到您在Git选项卡的底部有一点历史记录,然后单击其中一个提交以在Atom中查看它。查看差异提交时,您将看到三个元素:绿色文本是已添加到本次提交文档中的内容。红色文本是已从本次提交的文档中删除的内容。所有其他文本均保持不变。远程备份使用Git的优势之一是它的分布式设计,这意味着您可以将您的工作提交到本地存储库并将您的更改推送到任意数量的服务器以进行备份。您还可以从服务器中的这些拉取更改中下载,以便您碰巧使用的任何设备始终具有最新的更改。为此,您必须在Git服务器上拥有一个帐户。有几种免费的托管服务,包括开发Atom的公司GitHub,但奇怪的是GitHub并不开源;GitLab是。与专有软件相比,我更喜欢开源软件,在这个例子中我将使用GitLab。如果您还没有GitLab帐户,请注册一个并开始一个新的项目。项目名称不必与Atom中的项目文件夹匹配,但如果匹配可能更有意义。您可以将项目保密,在这种情况下,只有您和您授予明确许可的任何人都可以访问它,或者,如果您希望该项目可供互联网上偶然发现它的任何人使用,您可以它公开。不要将README文件添加到项目中。创建项目后,它将为您提供有关如何设置存储库描述的说明。如果您决定在终端中或通过单独的GUI使用Git,那么这是很好的信息,但Atom工作流程不同。单击GitLab界面右上角的“克隆”按钮。这显示了必须用于访问Git存储库的地址。复制“SSH”地址(不是“https”地址)。在Atom中,单击项目的.git目录并打开配置文件。将以下配置行添加到此文件,调整url值的seth/example.git部分以匹配您自己的唯一地址。[远程“来源”]url=git@gitlab.com:seth/example.gitfetch=+refs/heads/*:refs/remotes/origin/*[branch“master”]remote=originmerge=refs/heads/master在Git选项卡的底部,出现了一个标有“Fetch”的新按钮。由于您的服务器是全新的,因此没有数据可供您拉取,因此右键单击该按钮并选择推送。这会将您的更改推送到您的GitLab帐户,并且您的项目现在已备份到Git服务器上。您可以在每次提交后将更改推送到服务器。它提供即时的异地备份,并且由于数据量通常很小,所以它几乎与本地保存一样快。Compose和GitGit是一个复杂的系统,不仅对修订跟踪和备份有用。它还支持异步协作并鼓励实验。本文涵盖了一些基础知识,但还有更多关于Git的文章和整本书,以及如何使用它使您的工作更高效、更有弹性和动态。从将Git用于小任务开始,您使用它的次数越多,您会发现自己提出的问题越多,最终您会学到更多的技巧。