git 自动部署方案与 git remote 的问题

kajweb:hexo 博客,源码和生成页面分为 A 、B 两个仓库

定义本本机为 C,服务器为 S

已知两个博客已经配置好 githook 和实现了自动 pull 。

目前工作流是 C push 到 gitee 后,S 收到 githook 自动分别 pullA 、B 仓库

现在想改为由 C push A 后,在 S 端自动 hexo g -d 生成和 pushB 项目的源码。

但是现在遇到以下问题

1 、S 使用的是仓库的 ssh 公钥,非个人公钥,只有 git pull 权限。所以在 hexo push B 项目到远程仓库时可能会遇到权限。

所以产生以下疑问:

1 、服务器的 ssh 公钥可否实现部分仓库具有 push 权限、部分仓库不具有 push 权限?

2 、能否为 gitee.com 针对不同仓库使用不同的公钥?

By the ways,顺便问一下关于 git 的远程仓库别名的问题。

默认仓库是 git origin https https://xxx,(可 pull 、push 、需密码)

已经使用 git remote add githook ssh://xxx (只 pull 、免密)增加了 githook 远程仓库

怎么设置才可以既通过

3 、git pull githook 自动从 githook 源 pull 代码

注意,第 3 点实现时,会提醒错误,需要携带分支名才可以实现,如git pull githook master
由于设置自动部署时当前分支可能不是 master,如果携带具体分支可能会导致 merge 异常。但是将 githook/master 与本地 /master 绑定,git pull 又不能免密从 origin 源下载。

为啥 ssh 是免密 pull,但没有 push 权限呢?我想的是万一某天被 H 入侵了服务器,没有 push 权限他也动不了代码。而通过 https 则要求操作员每次都要输入密码,看起来好像安全了一点点。

git 搞分支的问题

yeqizhang:你们平时开发是像 github 一样 fork 后再 clone 这个仓库开发? 还是 clone 原仓库,基于原仓库的 master 开一个分支开发? 我们项目几十号人,我给了他们 fork 权限,发现部分人是 fork 后进行开发的,一个月都没 pull 到原仓库了。

请教大家有关 git 工作流的问题

gy0624ww:工作中遇到的情景是这样的 多人开发同一个项目,比如有 ABC 三个需求。(有可能涉及更改同一个文件) 这三个需求是提出间隔比较短,有一段时间是并行一起开发的,同时参与测试,但是上线日期可能不同。 首先,从 master 拉出各自的分支。每个人各自现在自己的本地环境开发,做完后把各自的分支打包到测试环境给测试。 测试人员也是多名,但是目前测试…

svn 下载 git 的单个目录, git 多分支情况下,下回来的是哪个分支?

muziling:github 上的项目,使用 git clone 只能下载整个项目,如果只需要某个目录,可以使用 svn 命令来操作。 主要修改部分在打开的目录 URL 中:将 /tree/master/(或 /tree/分支 /) 换成 /trunk/ 。 那下回来的数据,是 master 分支的目录,还是其它分支下的目录?

问个 git ignore 问题

pkwenda: 图片没打马赛克,我觉得没必要ysc3839:https://stackoverflow.com/questions/653454/how-do-you-make-git-ignore-files-without-using-gitignore pkwenda:@ysc3839 #1 大佬牛皮

git 主分支回退后无法 merge 问题

wuwukai007:分支 A merge 了分支 B,然后 master 合并了分支 A,现在回退了主分支合并的分支 A,然后在主分支上合并分之 B,提示无需合并,已在之前合并,卡在这了,现在怎么将分支 b 合并到主分支呢?wjidea:可以试一下 cherry-pick ? rrfeng:revert revert 就行