自建 git 的方案 - V2EX
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 7589 次点击
    这是一个创建于 560 天前的主题,其中的信息可能已经有所发展或是发生改变。

    平常都用 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 吧,谢谢大家。。。
    wyntau
        16
    wyntau  
       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 差不多。而且对服务器的要求低,文档详细且有中文翻译。
    smileeast
        27
    smileeast  
       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
    akagishigeru
        36
    akagishigeru  
       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
    MiMiGe
        45
    MiMiGe  
       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     Solana &nbp;   5103 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 05:53 PVG 13:53 LAX 21:53 JFK 00:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86