git-cola使用教程_使用Git Cola轻松实现Git

2023-05-16

 

摘自:https://www.pianshen.com/article/77011613798/

git-cola使用教程_使用Git Cola轻松实现Git

技术标签: java  python  大数据  git  linux

git-cola使用教程

Git是一个Linux命令,可帮助您管理工作的版本。 它已被移植到BSD,macOS,Windows等。 它是流行的代码托管服务的基础,包括GitLab和NotABug等开源服务,甚至流行的专有服务。 简而言之,Git席卷了软件开发(以及其他一些行业)。

POSIX终端。 为了帮助不使用终端的用户(无论出于何种原因),开发了Git Cola项目,本文教您如何使用它。 如果您不熟悉Git,请阅读我对Git的介绍,并还原旧文件中的文章,以了解它的功能以及人们为何如此喜欢它。 本教程并不假定您熟悉任何Git概念,而是想要或需要使用Git。

安装Git Cola

要在Linux上安装Git Cola,请从“ 应用程序”菜单打开应用程序安装程序(在GNOME上称为“ 软件 ”),然后搜索git-cola并进行安装。

Search for Git-cola installation

在macOS上,您可以使用Homebrew进行安装。 搜索git-cola并安装。

在Windows上,使用Chocolatey进行安装。 搜索git-cola并安装。

启动Git Cola

从“应用程序”菜单中启动Git Cola。 由于它是Git的图形界面,因此您无需键入命令。

当Git Cola启动时,它没有任何存储库。 就像在没有加载文件的情况下文字处理程序或音乐播放器用不了多少一样,Git Cola在没有加载项目的情况下也不是很有用。 如果您有需要贡献的Git存储库,则可以通过单击左下方Git Cola窗口中的Clone按钮来克隆它。 否则,请单击“ 新建”按钮。

Git-cola splash screen

在硬盘驱动器上的某个位置创建一个名为example-project.git的新目录。 该文件夹不必以.git结尾但这是Git存储库以.git结尾的约定,因此养成将其附加到项目末尾的习惯是一个好主意。 这是Git中的一个重要概念:为容纳项目而创建的目录实际上是Git存储库。 很难不进行挖掘就很难说出来,但是项目文件夹中有一个名为.git的隐藏目录,它包含重要的历史记录和配置文件,以便可以跟踪在该项目中所做的更改。

在此阶段,Git Cola的主界面看起来很孤单而且空虚。

empty Git-cola window

由文件填充项目由您决定,因此暂时将Git Cola留在后面。 使用操作系统的文件管理器(GNOME上的文件,macOS上的Finder,Windows上的Explorer),将一些文件添加到硬盘驱动器上的项目目录中。

与Git兼容的文件类型

Git主要用于基于文本的格式。 从技术上讲,Git并不真正在乎您添加到项目中的文件类型。 它的工作是跟踪更改。 但是有一个陷阱:并非所有文件格式都适合版本跟踪。 例如,JPEG图像实际上是通过压缩算法传递的像素值和位置的复杂矩阵。 如果以任何方式更改JPEG文件,则实际上是在创建一个全新的文件,因为尽管有可能产生一个版本与另一个版本之间的差异(软件术语中的“ diff”或“ delta”),但是代表可能需要的数据量大于两个图像的总和。

文本格式比您想象的更普遍。 除了实际的文本文件,还有许多基于原始文本的文件格式。 例如,HTML和CSS是纯文本格式。 基于JSON或XML的内容也是如此,例如SVG图形格式,PostScript(PS,PDF文件的基础)格式,源代码(PY,JAVA等)等等。 仅仅因为Git主要用于文本,并不意味着您不能在这里和那里做例外。 对于涉及大量二进制(非文本)数据的非常多样化的项目,可以使用诸如git-annex和Git-portal之类的工具来使您从Git中受益,而不会遭受对大型文件的厌恶。

本文重点介绍文本文件,因为Git Cola本机不支持外部Git扩展。

暂存文件

您通常在Git的文件做的第一件事是阶段 ,。 暂存文件意味着您已将文件标记为包含在下一次代码提交中。 它只不过是一个标签,而且很容易被撤消。 它不会更改或保留您的数据。 这只是跟踪进度的一种方法。

在项目目录中拥有文件后,该文件就会列在Git Cola的“ 状态”窗格中。 右键单击该文件,然后选择“选定阶段”

Staging a file in Git-cola

暂存文件的名称旁边带有绿色三角形标记。 您可以按照与暂存文件相同的方式来暂存文件:右键单击并选择Unstage Selected

提交

当您准备将文件提交到Git的永久历史记录时,就可以进行提交 。 提交完全代表了听起来的样子:您承诺将在Git存储库中保留一个文件,表面上是永远的。

要提交所有暂存的文件,请在“ 提交”文本字段中输入您的工作的简短描述。 这是提交消息 ,它在存储库的Git日志中永远可见。 这是一条有用的消息-有时通过提交某些文件来向协作者解释您的意图,而其他时间则提醒您。

Committing a file in Git-cola

用git push发布

现在,您的Git项目仅存在于本地计算机上。 使用Git与其他人协作是很常见的,因此Git存储库存在于其他人可以访问的服务器上是很常见的。 您可以在免费的Git主机(如GitLab)上创建存储库 ,并通过Git Cola与之交互。 创建空的远程存储库后,可以将其添加到Git Cola。

要添加远程服务器,请单击Git Cola中的File菜单,然后选择Edit Remotes 。 在“ 编辑遥控器”窗口中,单击左下角的加号( + )。 在出现的对话框中,输入遥控器的名称和URL。 名称可以是任何名称,但是将主遥控器命名为origin是常规的(因此,对于大多数有经验的用户而言是期望的)。 该URL由您的Git主机提供,通常以git @开头(还有其他协议,例如https://git:// ,但它们有局限性,因此很少使用)。

一旦配置了远程,就可以将提交推送到服务器。

要将提交推送到远程存储库,请导航至“ 操作”菜单,然后选择“ 推送” ,或仅按Ctrl + P。 git push仅将您提交的文件发送到服务器。 如果自进行更改以来从未暂存文件或尚未暂存文件,则该数据将不会被推送到服务器。 有时候那是一件好事。 Git被设计为一个出色的工作空间:您可以将正在进行的工作与旧的可靠文件并排进行,而不必担心这两个文件之间的负面影响。 但是,如果您忘记在登台中添加重要文件或提交登台中的内容,那么您就不会推送您认为要推送的数据。

用git pull更新

如果您正在与其他人一起处理项目,那么他们很有可能会从自己的计算机将文件提交到存储库。 为了使您的工作环境保持同步,您必须定期执行git pull 。 拉所有最新的提交从服务器,导航到操作菜单并选择 ,或者只是按下Ctrl + Shift + P。

其他一切

Git Cola可以执行所有典型的Git动作以及其他一些动作。 Git具有许多出色的功能,可确保您所做工作的已知良好版本是安全的,可帮助您发挥创造力并大胆地工作。 例如, Git分支使您能够同时拥有项目的并行版本,而git merge为您提供了在您认为一个版本可以使另一个版本受益时组合这些版本的工具。 Git的可能性是无限的,这就是为什么它如此受欢迎。

如果不熟悉终端设备使您无法尝试使用Git,请不要再抵抗了! 坐下来喝一杯凉爽的Git Cola,看看Git为您带来了什么。

翻译自: https://opensource.com/article/20/3/git-cola

git-cola使用教程

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

git-cola使用教程_使用Git Cola轻松实现Git 的相关文章

  • 测量大型源树中的“接近度”

    作为我之前提出的问题的一部分找到两个来源之间的最佳匹配 https stackoverflow com questions 13898659 finding what git commit some code spawned from 其中
  • GIT:向非当前分支添加本地更改

    我通常会遇到这样的情况 我做了一些本地更改 却发现我在错误的分支上进行了更改 因此我需要在提交之前切换分支 问题是当有本地更改时我无法切换分支 有办法做到这一点吗 显然 我可以复制更新的文件 切换分支 然后将它们复制回来 但这看起来并不聪明
  • 为什么我使用某些 git 命令后终端变得无响应?

    我经常 真的每次 使用该命令后git log我的终端对进一步的输入没有响应 这是在 OSX 上 是否有一个我不知道的命令将使终端再次激活 而不是仅仅退出终端并重新开始 您正在使用一个无需滚动即可显示日志的程序 很可能less 可以通过按q
  • GIT 中的 Fastlane 应用程序文件?如何检索当前的 apple_id?

    我为我的 XCode 项目设置了 Fastlane 来实现构建自动化 至少 Fastfile 包含构建选项 应该位于 GIT 中 但我也很高兴 Appfile 团队标识符 也位于 GIT 中 主要问题 Appfile 应该包含我的 appl
  • Git 存储库错误并显示消息,它不是存储库...但它是

    我有一个 git repo 去年我一直在同一个盒子上使用 今天我跑步git status并得到错误消息 fatal Not a git repository or any parent up to mount parent home Sto
  • 如何保持 git 存储库的公共和私有版本同步?

    我正在 Github 上发布一个开源 Rails 应用程序 可能是 MIT 许可证 我还想维护一个项目的私人分支 分支 我们将使用它作为付费服务的一部分 在这种情况下组织存储库的最佳方式是什么 而且 当我有两个项目的更新时 如何保持项目同步
  • 使用 Git 部署时压缩 JS/CSS 文件

    我对 git 有点陌生 另外 这是我第一个自动化部署过程的项目 到目前为止 能够做到这一点真是太幸福了git push dev并上传文件 复制配置文件等 现在 当我推送到我的开发服务器时 我想缩小 JS CSS 文件 我正在考虑在服务器上安
  • 无法从 Git 扩展向 GitHub 进行身份验证?

    我只是在 Visual Studio 2010 中设置 Git 扩展 但无法真正使其工作 我无法进行身份验证 在 Git Extensions 中 如果我选择 Plugins gt GitHub 我可以添加用户 密码 API 令牌并选择 S
  • 永久删除 git 提交历史记录

    我需要永久且完全删除 git 存储库的提交历史记录并继续使用文件的当前版本 旧版本 提交不得以任何方式访问 我尝试创建一个新的主分支 删除所有其他分支 但是当我在 git bash 中尝试 git show xxxx 时 旧的提交继续显示
  • Azure Devops Pipeline YAML 中的 Git 标记名称

    Summary 如何获取 Azure Devops Pipeline YAML 文件中当前 git 标签的名称 我想做什么 我正在 Azure Devops 中设置构建管道 创建新的 git 标签时会触发管道 然后我想构建 docker 镜
  • 从远程获取上个月在 git 分支上提交的文件列表

    我正在尝试获取上个月在 master 分支的 github 存储库上更改的所有文件的列表 我的本地克隆没有可以追溯到那么远的日志 因此当我运行以下命令时 git diff stat 1 month ago 我收到一条警告消息和一小部分更改
  • 使 .git 目录 web 不可访问

    我有一个网站 我使用 github 闭源 来跟踪更改和更新网站 唯一的问题是 git 目录似乎可以通过网络访问 我怎样才能停止这个并且仍然能够使用 git 我应该使用 htaccess 吗 我应该更改 git 的权限吗 把这个放在一个 ht
  • 合并多个 git 存储库

    假设我有一个看起来像这样的设置 phd code phd figures phd thesis 由于历史原因 这些都有自己的 git 存储库 但我想将它们合并为一个 以稍微简化事情 例如 现在我可能会进行两组更改 并且必须执行类似的操作 c
  • 如何设置“阅读文档”以使 Sphinx autodoc 选项发挥作用?

    我的项目不是使用 autodoc 构建的 我遇到了关于我的项目未在 autodoc 中构建的常见问题 https read the docs readthedocs org en latest faq html my project isn
  • 使用 SourceTree 克隆存储库

    有人可以给我一个简单的使用 SourceTree 克隆存储库的快速演练吗 在书签中 我单击克隆存储库 对于源路径 我粘贴如下所示的 URL 电子邮件受保护 cdn cgi l email protection 客户端 应用程序名称 ios
  • 名称和电子邮件在 Git 的每用户配置文件中设置,但 Git 仍使用默认生成的名称和电子邮件

    标题已经说了 但我会更彻底地解释一下 我已使用以下命令按照建议配置了用户名和电子邮件 git config global user name git config global user email 我可以通过执行以下操作来验证这是设置的g
  • 如何在没有本地存储库的情况下在远程运行 git 命令

    我有一个名为 git export 的脚本 它可以帮助我导出远程存储库 它是这样运行的 git export http host com git repo lt t tag or b branch or c commit gt local
  • Jenkins groovy - 如何从最新提交中检索标签?

    从中获取最新提交branchName 我们运行下面的代码 treeMapData git branch branchName credentialsId credential url gitLabServer projectName rep
  • Git rebase --继续而不打开编辑器

    调用时git rebase continue在正常的变基冲突之后 编辑器 GIT EDITOR 打开并要求修改提交消息 因为提交消息可能包含前导 所以这可能会失败 export GIT EDITOR true git rebase cont
  • 将主分支的提交合并到另一个分支,但不合并两个分支

    我有 git 存储库和一个主分支 我决定开发新功能 并且创建了新分支 new branch 我已经在 new branch 中创建了一些提交 但我还没有完成新功能 我决定修复 master 分支中的一些错误 因此我切换到 master 分支

随机推荐