V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
qweruiop
V2EX  ›  git

自建 git 的方案

  •  
  •   qweruiop · 2024-06-04 14:25:45 +08:00 · 7006 次点击
    这是一个创建于 376 天前的主题,其中的信息可能已经有所发展或是发生改变。

    平常都用 github ,今天朋友的 github 账号莫名其妙被 suspended 了。。。求一个 github 的自建方案,需求: 项目收到 commit ,可以自动把 commit ,同时推向作为备份用的 gitlab/github ,完成镜像的动作。。。

    57 条回复    2024-06-08 16:26:50 +08:00
    chuck1in
        1
    chuck1in  
       2024-06-04 14:27:21 +08:00
    有点吓人,为啥会被 suspended ,是不是发了广告或者违规内容哦?
    ariasigh
        2
    ariasigh  
       2024-06-04 14:33:00 +08:00 via iPhone
    gitea
    wangpengfei4113
        3
    wangpengfei4113  
       2024-06-04 14:33:41 +08:00
    gitea+1
    herich
        4
    herich  
       2024-06-04 14:37:01 +08:00
    gitea+1
    aulayli
        5
    aulayli  
       2024-06-04 14:38:49 +08:00
    你朋友干啥了?我不信 GitHub 会无缘无故的封号。
    ChengLuffy
        6
    ChengLuffy  
       2024-06-04 14:39:20 +08:00
    gitea 继续 +1
    cslive
        7
    cslive  
       2024-06-04 15:54:43 +08:00
    配置足够高就 gitlab ,配置不够 gitea/gogs
    Sayuri
        8
    Sayuri  
       2024-06-04 18:21:01 +08:00   ❤️ 1
    GItLab 也是一个很好的选择。
    zx900930
        9
    zx900930  
       2024-06-04 19:46:35 +08:00   ❤️ 2
    gitlab 吧,可以随时升 ee ,第三方集成的支持也好得多。
    只自己用,没有任何高级需求就 gitea 。
    Pteromyini
        10
    Pteromyini  
       2024-06-04 20:05:48 +08:00   ❤️ 5
    @chuck1in #1 很常见,比如你开了个 action 做编译,然后引用了 github 以外的包或者推送到了别的地方就可能被认定为滥用然后 ban 账号。我有一个用于构建 hexo 的账号因为构建后推送到了 vps 被 ban 了,理由是与第三方交互,这就是个包袱条款
    Pteromyini
        11
    Pteromyini  
       2024-06-04 20:06:54 +08:00
    自建的话 gitea 挺好的
    memorycancel
        12
    memorycancel  
       2024-06-04 20:20:53 +08:00   ❤️ 3
    发个小众的 gitly: https://github.com/vlang/gitly
    大小只有 1MB 就能运行 性能杠杠的
    没有 JS 。。
    shepherdlazy
        13
    shepherdlazy  
       2024-06-04 20:26:02 +08:00
    gitolite+cigt,镜像推送用钩子实现
    shepherdlazy
        14
    shepherdlazy  
       2024-06-04 20:26:40 +08:00
    gitolite+cgit,镜像推送用钩子实现
    qweruiop
        15
    qweruiop  
    OP
       2024-06-04 20:30:45 +08:00
    @chuck1in 不知道,而且也没收到任何邮件,直接 suspended 了,他 8 年的账号了。所以说想自己整个自建的,类似于 gitlab 里面可以设置镜像功能,但是 gitlab 太耗资源了,我试试 gitee 吧,谢谢大家。。。
    Jeremial
        16
    Jeremial  
       2024-06-04 20:31:49 +08:00
    gitea actions 和 github actions 写法差不多. 可以自建一套
    Cbdy
        17
    Cbdy  
       2024-06-04 21:44:26 +08:00
    git init --bare
    zhouu
        18
    zhouu  
       2024-06-04 22:38:55 +08:00
    推荐本站大佬的 onedev
    blastlong
        19
    blastlong  
       2024-06-04 22:41:26 +08:00
    gitea+1
    Puteulanus
        20
    Puteulanus  
       2024-06-04 22:45:54 +08:00
    /t/832380
    /t/971996

    之前在本站看到分享的看起来还不错的
    wxyrrcj
        21
    wxyrrcj  
       2024-06-05 08:23:18 +08:00
    RoccoShi
        22
    RoccoShi  
       2024-06-05 08:30:01 +08:00
    gitea, 可以镜像 pull/push
    lxqxqxq
        23
    lxqxqxq  
       2024-06-05 08:56:46 +08:00
    git init --bare + git hook
    VersionGod1
        24
    VersionGod1  
       2024-06-05 09:23:44 +08:00
    自己搭建一个 Gitlab ,docker 部署的话挺简单,就是需要的服务器内存有点高。
    wtsamuel
        25
    wtsamuel  
       2024-06-05 09:53:29 +08:00
    gitea +1
    qinqiuxu
        26
    qinqiuxu  
       2024-06-05 09:53:33 +08:00
    gitea ,支持 CI ,配置跟 github actions 差不多。而且对服务器的要求低,文档详细且有中文翻译。
    1252603486
        27
    1252603486  
       2024-06-05 09:56:34 +08:00
    Gitea ,基本够用,我给公司搭的就这个,不怎么占内存,好像 MySQL ,PgSQL ,SQLite 都支持
    rlds
        28
    rlds  
       2024-06-05 10:23:26 +08:00
    gitea
    Pteromyini
        29
    Pteromyini  
       2024-06-05 10:29:46 +08:00
    @qweruiop #15 这个是我账号被 ban 了我找客服要解释他们给的回复
    F7TsdQL45E0jmoiG
        30
    F7TsdQL45E0jmoiG  
       2024-06-05 11:05:08 +08:00
    gitlab +1
    zzsqwq
        31
    zzsqwq  
       2024-06-05 11:16:08 +08:00
    岔个题,之前我帐号也被突然 suspended 了 ,原因是在一个组织里面我是 owner ,但是组织里有个人帐号被盗了,号被 suspended 了,然后我和另一个 owner 也一起被 suspended 了。但发邮件问了一下,过了几天都恢复了,不知道你朋友这个是不是类似的情况?

    我这事具体的情况链接: https://blog.zzsqwq.cn/posts/github-suspended-for-no-reason/,可以参考备份一些 star 的仓库等。
    waino
        32
    waino  
       2024-06-05 14:42:58 +08:00
    我 GitHub 账号也被 ban 了,给客服发邮件都不鸟的
    kneo
        33
    kneo  
       2024-06-05 16:53:57 +08:00 via Android
    gitea ,一百兆内存就能跑。
    pckillers
        34
    pckillers  
       2024-06-05 17:01:03 +08:00
    也不一定要自己建啊,内容没问题 单纯只是备份的话公网的 gitlab gitea gitee 多传几份不就行了。 封号也不太会一起封啊。

    当然传违法的东西那我只能说没办法了。
    yisier
        35
    yisier  
       2024-06-05 17:38:28 +08:00
    gitea+1
    JaguarJack
        36
    JaguarJack  
       2024-06-05 17:40:07 +08:00
    gitea+1
    Huelse
        37
    Huelse  
       2024-06-05 17:46:22 +08:00
    gitea+1
    gitlab 既吃性能又很慢,不是很推荐,担忧 gitea 的社区维护的话可以考虑 forgejo
    zwgf
        38
    zwgf  
       2024-06-05 18:08:58 +08:00   ❤️ 1
    gogs
    mckelvin
        39
    mckelvin  
       2024-06-05 19:09:33 +08:00 via iPhone
    如果就一个人用的话,其实不需要第三方软件。有 ssh 即可。比如你平时 ssh yourname@yourhost 来登陆到主机。那把以下地址添加到 git remote 即可。

    yourname@yourhost:path/to/your/repo.git

    初始化时可能需要在 yourhost 上做一次 `git clone --bare github_address.git path/to/your/repo `
    如果需要单向同步,搞个 git hook 或者 crontab 即可。
    如果需要一个图形界面可以在本地的 git repo 下跑 git web.

    主打一个原生
    ilylx2008
        40
    ilylx2008  
       2024-06-05 19:14:37 +08:00
    james122333
        41
    james122333  
       2024-06-05 22:50:19 +08:00 via Android
    直接开一个 sshd server 你想要推到 mirror 也不用什么 hook 直接指定 GIT_EXEC_PATH 环境变量即可 git 会从该目录寻找子命令
    james122333
        42
    james122333  
       2024-06-05 22:52:04 +08:00 via Android
    以上变量方式可以写一堆 wrapper
    lightionight
        43
    lightionight  
       2024-06-05 22:57:08 +08:00
    @zwgf  总算看到一个 gogs 😂
    huangzxx
        44
    huangzxx  
       2024-06-06 00:07:08 +08:00
    gitea
    BealuoC
        45
    BealuoC  
       2024-06-06 01:52:26 +08:00
    gogs
    qweruiop
        46
    qweruiop  
    OP
       2024-06-06 07:55:29 +08:00
    主要需求:
    1 ,自带镜像功能,可以方便镜像到 gitlab 和 github 。
    2 ,自带简单的 ci 。
    Quarter
        47
    Quarter  
       2024-06-06 08:43:42 +08:00 via Android
    gitea 、gitlab
    blessedbin
        48
    blessedbin  
       2024-06-06 08:52:43 +08:00
    gitea +1
    dj721xHiAvbL11n0
        49
    dj721xHiAvbL11n0  
       2024-06-06 09:02:35 +08:00
    @Pteromyini #10 我也是构建后将 dist 目录推送到自己服务器,咋没事的
    lx0758
        50
    lx0758  
       2024-06-06 10:01:06 +08:00
    gitea+1
    Pteromyini
        51
    Pteromyini  
       2024-06-06 10:20:28 +08:00
    @x2420390517 #49 这东西就是看运气,按照他这个条款可以说绝大多数开发者可能都会或多或少违反一点,但是因为访问 ip 、账号注册时间等等各种原因甚至包括运气原因总有倒霉蛋(比如我这个只用来构建博客一个仓库的倒霉蛋就寄了
    cnleon
        52
    cnleon  
       2024-06-06 11:21:17 +08:00
    如果就自己用,直接就 git 启动就行了,就是没啥 merge 这些了
    ooolooo
        53
    ooolooo  
       2024-06-06 13:33:02 +08:00
    @Pteromyini vercel 就没有问题啊, 不过是 vercel 监控仓库推送自己构建的
    egan0606
        54
    egan0606  
       2024-06-06 14:02:06 +08:00
    阿里云效,自用挺好的;
    suyuyu
        55
    suyuyu  
       2024-06-06 14:04:13 +08:00
    gogs +1
    abc1310054026
        56
    abc1310054026  
       2024-06-06 15:43:52 +08:00
    gitea 兼容全平台 轻量级 也支持双向同步。
    qweruiop
        57
    qweruiop  
    OP
       2024-06-08 16:26:50 +08:00
    谢谢大家,gogs 不带这个镜像功能,最后用 gitea 完美解决。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4616 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 04:01 · PVG 12:01 · LAX 21:01 · JFK 00:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.