jjzjj

Gitea在windows平台的安装和简单使用教程

wajun111 2025-01-17 原文

Gitea在windows平台的安装和简单使用教程

一、Gitea简介

官网介绍:Gitea的首要目标是创建一个极易安装,运行非常快速,安装和使用体验良好的自建 Git 服务。我们采用Go作为后端语言,这使我们只要生成一个可执行程序即可。并且他还支持跨平台,支持 Linux, macOS 和 Windows 以及各种架构,除了x86,amd64,还包括 ARM 和 PowerPC。详情可以到官网了解。

也就是说Gitea一个git管理工具,类似构建自己的github,但是github仓库需要公开(私有付费),国内的gitee免费的也有一定的限制,而且是线上的。我们可以通过Gitea在局域网管理自己的项目代码

二、Gitea安装

可以到Gitea官网下载或者Gitea的Github上下载Gitea软件。

到官网点击下载


选择版本:

选择对应的操作系统,这里选择windows 64位操作系统:

下载后建议在非系统盘新建一个文件夹,比如gitea文件夹

在gitea文件夹下存放Gitea软件,然后在gitea文件夹下新建data文件夹:

然后直接双击启动软件,会弹出一个dos框,软件这时已经成功启动:

软件启动之后我们打开浏览器,输入http://localhost:3000/,会出现登录界面,点击登录

第一次登录会直接弹出初始化界面,按以下参数进行配置:

填写完之后直接安装,这时等dos安装完,然后关闭软件,然后重启一下软件

重启后,在浏览器输入刚才注册的IP地址和端口号,上图是http://10.0.0.168:80/,然后会看到登录界面,点击登录,输入刚才的管理员账号密码,就能成功登录了。登录后就可以使用了,在右上角可以设置个人信息和配置其他一些后台管理,此时Gitea算是安装完成了。

三、将Gitea注册成为服务

我们希望Gitea能一直启动并且在开机或者软件崩溃时能自动重启,所以我们需要把Gitea注册成服务。此时我们需要一个软件:nssm。

nssm软件的下载网址:NSSM - the Non-Sucking Service Manager

下载好后解压,打开找到对应win64文件夹(32位的就打开win32文件夹),空白处右键打开命令提示符(CMD)

输入:nssm install gitea

然后会弹出的软件,选择我们下载的Gitea的软件的路径

然后点击安装

安装好后打开计算机的服务,就能看到gitea已经成为一项服务了,服务默认的状态就是自动启动了的,如果不是,需要手动设置为自动。这时候我们再打开浏览器登录gitea验证能不能登录,如果登录不了,可能需要将服务停止一下再启动

四、在gitea上新建账号、组织、团队和仓库

1.更换头像

我们可以在右上角进入管理员的设置页面,可以在里头设置个人信息和其他各种设置等,可以先在个人信息中设置个人头像,不然头像会一直是一张加载不出来的图片

2.新建组织

右上角选择后台管理,创建新的组织,输入需要的组织名字和需要的其他设置,点击创建组织就可以

3.新建账户

跟新建组织类似,这里不做过多介绍,大家可以自己尝试,新建好的用户可以在同一个局域网内输入IP地址和端口就可以登录建立好的gitea平台。

4.新建团队

新建账户后就可以建立团队,建立团队的目的是为了更好的管理账户的权限。

在组织中选择组织团队,点击新建团队,配置相应的权限等,然后创建团队,然后把需要拉进来的账户名称输入到添加团队成员框,点击添加团队。

5.新建仓库

我们可以在组织里新建仓库,选择拥有者,输入仓库名字等信息后创建仓库。

创建好后会有一个仓库的地址,在局域网内的已经授权的用户就可以访问这个仓库

6.修改Gitea平台的配置信息

有时候我们的IP地址更换了,登不了平台,可以在安装目录下…\gitea\custom\conf文件夹下找到app.ini文件,然后打开,更改里头的信息就行。

五、将本地代码推送到Gitea平台上或者拉取代码

1.将代码从本地推送到Gitea平台上

本教程使用的是Sourcetree软件进行代码的拉取和推送等功能。

选择一个本地需要推送的仓库,下图是新建一个test的仓库。

然后点击右上角的设置-添加远程仓库

将Gitea平台上已经新建的仓库的名称和地址填入对应的信息框中,确定。

然后点击推送-选择分支-推送,第一次推送要输入Gitea端的账号和密码,注意此账号和密码指的是Gitea平台账户的账号和密码

打开Gitea端,就能看到推送的信息

2.将代码从Gitea平台上拉取到本地

这里为了从零演示,我们新建一个文件夹

然后点击右上角的设置-添加远程仓库

将Gitea平台上已经新建的仓库的名称和地址填入对应的信息框中,确定。

点击拉取,选择分支,本地第一次选择分支需要输入Gitea平台的账号密码,之前输入过就不用。

拉取成功

六、为Gitea添加秘钥

先在本地生成秘钥,以Sourcetree为例:

Sourcetree-工具-打开SSH助手

这时你会发现进度很慢。应该用鼠标左键在红色框中点击加快速度

生成完成之后复制一下key备用用。然后保存文件备用

打开Gitea平台,设置-SSH/GPG密钥-增加密钥,填入密钥就可以了,增加密钥后,你的这台电脑就不需要输入账户和密码就能直接拉取和推送这个账户的仓库了。

有关Gitea在windows平台的安装和简单使用教程的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 使用 RubyZip 生成 ZIP 文件时设置压缩级别 - 2

    我有一个Ruby程序,它使用rubyzip压缩XML文件的目录树。gem。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。我在rubyzipdocumentation中找不到一种为创建的ZIP文件指定压缩级别的方法。有人知道如何更改此设置吗?是否有另一个允许指定压缩级别的Ruby库? 最佳答案 这是我通过查看ruby​​zip内部创建的代码。level=Zlib::BEST_COMPRESSIONZip::ZipOutputStream.open(zip_file)do|zip|Dir.glob("**/*")d

  3. ruby - 为什么我可以在 Ruby 中使用 Object#send 访问私有(private)/ protected 方法? - 2

    类classAprivatedeffooputs:fooendpublicdefbarputs:barendprivatedefzimputs:zimendprotecteddefdibputs:dibendendA的实例a=A.new测试a.foorescueputs:faila.barrescueputs:faila.zimrescueputs:faila.dibrescueputs:faila.gazrescueputs:fail测试输出failbarfailfailfail.发送测试[:foo,:bar,:zim,:dib,:gaz].each{|m|a.send(m)resc

  4. ruby-on-rails - 使用 Ruby on Rails 进行自动化测试 - 最佳实践 - 2

    很好奇,就使用ruby​​onrails自动化单元测试而言,你们正在做什么?您是否创建了一个脚本来在cron中运行rake作业并将结果邮寄给您?git中的预提交Hook?只是手动调用?我完全理解测试,但想知道在错误发生之前捕获错误的最佳实践是什么。让我们理所当然地认为测试本身是完美无缺的,并且可以正常工作。下一步是什么以确保他们在正确的时间将可能有害的结果传达给您? 最佳答案 不确定您到底想听什么,但是有几个级别的自动代码库控制:在处理某项功能时,您可以使用类似autotest的内容获得关于哪些有效,哪些无效的即时反馈。要确保您的提

  5. ruby - 在 Ruby 中使用匿名模块 - 2

    假设我做了一个模块如下:m=Module.newdoclassCendend三个问题:除了对m的引用之外,还有什么方法可以访问C和m中的其他内容?我可以在创建匿名模块后为其命名吗(就像我输入“module...”一样)?如何在使用完匿名模块后将其删除,使其定义的常量不再存在? 最佳答案 三个答案:是的,使用ObjectSpace.此代码使c引用你的类(class)C不引用m:c=nilObjectSpace.each_object{|obj|c=objif(Class===objandobj.name=~/::C$/)}当然这取决于

  6. ruby - 使用 ruby​​ 和 savon 的 SOAP 服务 - 2

    我正在尝试使用ruby​​和Savon来使用网络服务。测试服务为http://www.webservicex.net/WS/WSDetails.aspx?WSID=9&CATID=2require'rubygems'require'savon'client=Savon::Client.new"http://www.webservicex.net/stockquote.asmx?WSDL"client.get_quotedo|soap|soap.body={:symbol=>"AAPL"}end返回SOAP异常。检查soap信封,在我看来soap请求没有正确的命名空间。任何人都可以建议我

  7. ruby - 在 Ruby 程序执行时阻止 Windows 7 PC 进入休眠状态 - 2

    我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0

  8. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  9. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  10. ruby - 使用 ruby​​ 将 HTML 转换为纯文本并维护结构/格式 - 2

    我想将html转换为纯文本。不过,我不想只删除标签,我想智能地保留尽可能多的格式。为插入换行符标签,检测段落并格式化它们等。输入非常简单,通常是格式良好的html(不是整个文档,只是一堆内容,通常没有anchor或图像)。我可以将几个正则表达式放在一起,让我达到80%,但我认为可能有一些现有的解决方案更智能。 最佳答案 首先,不要尝试为此使用正则表达式。很有可能你会想出一个脆弱/脆弱的解决方案,它会随着HTML的变化而崩溃,或者很难管理和维护。您可以使用Nokogiri快速解析HTML并提取文本:require'nokogiri'h

随机推荐