如何让 Git 使用 HTTP 代理服务器

如何让 Git 使用 HTTP 代理服务器,第1张

Git 是一个少有的能将如此多的现代计算封装到一个程序之中的应用程序,它可以用作许多其他应用程序的计算引擎。虽然它以跟踪软件开发中的源代码更改而闻名,但它还有许多其他用途,可以让你的生活更轻松、更有条理。在这个 Git 系列中,我们将分享七种鲜为人知的使用 Git 的方法。

创建一个网站曾经是极其简单的,而同时它又是一种黑魔法。回到 Web 10 的旧时代(不是每个人都会这样称呼它),你可以打开任何网站,查看其源代码,并对 HTML 及其内联样式和基于表格的布局进行反向工程,在这样的一两个下午之后,你就会感觉自己像一个程序员一样。不过要让你创建的页面放到互联网上,仍然有一些问题,因为这意味着你需要处理服务器、FTP 以及 webroot 目录和文件权限。虽然从那时起,现代网站变得愈加复杂,但如果你让 Git 帮助你,自出版可以同样容易(或更容易!)。

Hugo 是一个开源的静态站点生成器。静态网站是过去的 Web 的基础(如果你回溯到很久以前,那就是 Web 的全部了)。静态站点有几个优点:它们相对容易编写,因为你不必编写代码;它们相对安全,因为页面上没有执行代码;并且它们可以非常快,因为除了在页面上传输的任何内容之外没有任何处理。

Hugo 并不是唯一一个静态站点生成器。 Grav 、 Pico 、 Jekyll 、 Podwrite 以及许多其他的同类软件都提供了一种创建一个功能最少的、只需要很少维护的网站的简单方法。Hugo 恰好是内置集成了 GitLab 集成的一个静态站点生成器,这意味着你可以使用免费的 GitLab 帐户生成和托管你的网站。

Hugo 也有一些非常大的用户。例如,如果你曾经去过 Let’s Encrypt 网站,那么你已经用过了一个用 Hugo 构建的网站。

Hugo 是跨平台的,你可以在 Hugo 的入门资源 中找到适用于 MacOS、Windows、Linux、OpenBSD 和 FreeBSD 的安装说明。

如果你使用的是 Linux 或 BSD,最简单的方法是从软件存储库或 ports 树安装 Hugo。确切的命令取决于你的发行版,但在 Fedora 上,你应该输入:

通过打开终端并键入以下内容确认你已正确安装:

这将打印 hugo 命令的所有可用选项。如果你没有看到,你可能没有正确安装 Hugo 或需要 将该命令添加到你的路径 。

要构建 Hugo 站点,你必须有个特定的目录结构,通过输入以下命令 Hugo 将为你生成它:

你现在有了一个名为 mysite 的目录,它包含构建 Hugo 网站所需的默认目录。

Git 是你将网站放到互联网上的接口,因此切换到你新的 mysite 文件夹,并将其初始化为 Git 存储库:

Hugo 与 Git 配合的很好,所以你甚至可以使用 Git 为你的网站安装主题。除非你计划开发你正在安装的主题,否则可以使用 --depth 选项克隆该主题的源的最新状态:

现在为你的网站创建一些内容:

使用你喜欢的文本编辑器编辑 content/posts 目录中的 hellomd 文件。Hugo 接受 Markdown 文件,并会在发布时将它们转换为经过主题化的 HTML 文件,因此你的内容必须采用 Markdown 格式 。

如果要在帖子中包含图像,请在 static 目录中创建一个名为 images 的文件夹。将图像放入此文件夹,并使用以 /images 开头的绝对路径在标记中引用它们。例如:

你可以在 themesgohugoio 找到更多主题,但最好在测试时保持一个基本主题。标准的 Hugo 测试主题是 Ananke 。某些主题具有复杂的依赖关系,而另外一些主题如果没有复杂的配置的话,也许不会以你预期的方式呈现页面。本例中使用的 Mero 主题捆绑了一个详细的 configtoml 配置文件,但是(为了简单起见)我将在这里只提供基本的配置。在文本编辑器中打开名为 configtoml 的文件,并添加三个配置参数:

在你准备发布之前不必(预先)在互联网上放置任何内容。在你开发网站时,你可以通过启动 Hugo 附带的仅限本地访问的 Web 服务器来预览你的站点。

打开 Web 浏览器并导航到 >1:服务器端创建用户(git)
# sudo addusergit
2:客户端生成公钥,并
创建公钥:ssh-keygen,
在客户端的用户目录下查看生成的公钥和私钥对
#cd ~/ssh
#ls
id_dsa id_dsapub
公钥所在的目录:windows在”C:/User/username/ssh”目录下,linux在”~/ssh”,~代表用户目录
3:服务器git用户下添加各个用户公钥,并配置ssh服务
将各个用户的公钥文件追加在服务器git用户的authorized_keys文件中
$ cat id_rsajohnpub >> ~/ssh/authorized_keys
$ cat id_rsajosiepub >> ~/ssh/authorized_keys
$ cat id_rsajessicapub >> ~/ssh/authorized_keys
修改ssh和authorized_keys的权限)忘记下面的话,会每次输入密码,(ps,被这个坑了好久)
chmod 700 ~/ssh
chmod 600 ~/ssh/authorized_keys
4,在git用户下创建git库
cd gitDIR
mkdir projectgit
cd projectgit
git init –bare
5,客户端使用
提交自己的库
mkdir project
cd project
git init
vi firsttxt
git remote add origin gitserver/gitDIR/projectgit
git push origin master
克隆:git clonegit@gitserver/gitDIR/projectgit
6,限制开发者登陆
默认情况下,能够连接git服务器用户也可以通过ssh直接登陆服务器,那么服务器将会存在被多用户登入的风险,限制的方法是:
Vi /etc/passwd
git:x:1000:1000::/home/git:/bin/sh
该行修改后的样子如下:
git:x:1000:1000::/home/git:/bin/git-shell


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10681149.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存