我正在尝试学习github来部署网页。以下是我要采取的步骤:
git checkout master
git pull origin master
git checkout –b my-awesome-branch
做一些工作,做一个git状态检查一切,一切都好。
git add .
git commit –m "awesome message here"
git push origin my-awesome-branch
git checkout integration
git merge my-awesome-branch
git push origin integration
cap development deploy
这会将文件推送到我们拥有的开发服务器,以便人们可以查看它 - 这对我来说很好,你将无法看到链接,但它会生成这样的内容:
http://dev.mywebsite.com/events/email/welcome
让我们上线(假装没有进一步的变化)
git checkout master
git merge my-awesome-branch
git push origin master
cap production deploy
理论上,该文件应该推送到实时网站(可能是http://mywebsite.com/events/email/welcome
),但是当我进行生产部署时,不会创建该网页。
另一位熟悉此系统的开发人员说:
看起来你分叉了“我的聚会活动”回购并推动了 掌握那里。你需要将master推送到上游远程( 主要的“我的派对活动”,或my_events repo。)
我不遵循这一步。谁能遵循这个逻辑吗?如果是这样,你对我可能做错了什么有建议吗?任何帮助表示赞赏。
答案 0 :(得分:0)
如果您在 Github 上有分叉分支,则表示您拥有您名下的整个git仓库的副本。检查您的Github帐户以验证这一点。
为此,请转到https://github.com/your-github-user-name-here
。在左侧,查找“my-party-events”(假设是回购名称)。在其下方,查找"forked from xyz/my-party-events"
。
如果您没有看到'forked from ...'
,那么您就是该回购的原始所有者。情况并非如此。
如果你看到'forked from ...'
,那么你的名字下面就有一个副本(这就是一个分叉)。您对fork所做的任何更改都不会影响原始仓库。
如果你和我在一起,有两种方法可以去。
通过Git (推荐)
每当您之前执行git pull
或git push
时,您指定的是 origin ,这是您之前设置的repo的可读名称。回购地址实际上看起来像这样
git@github.com:your-user-name/project-name.git
正如你所看到的,用“起源”这样的昵称来引用它更容易记住。
假设您对主项目仓库具有写入权限,您只需在配置中添加另一个仓库即可。 在尝试此操作之前确保您具有写入权限,否则您只是在浪费时间。如果你不确定,请问你的同事。
让我们说你想把回购昵称为'生产',你会这样做
git remote add production git@github.com:PROJECT_OWNER/project-name.git
git repo地址看起来几乎与你的fork repo相同。它仅因用户名而异。在所有Github项目的首页上,repo地址位于文本字段中。它位于“SSH | HTTPS | Git只读”按钮旁边。从那里获取地址,在上面的命令中替换它,最后,在命令行中执行此操作
git push production master
从现在开始,你可以git push production master
,这非常简单。如果您没有写入权限,则必须通过拉取请求提交更改。
通过网站
您可以向分叉的仓库提交拉取请求。拉取请求要求原始repo管理员包含您在fork上所做的更改。
要提交拉取请求,请从项目页面单击项目分支。查看右上角附近的“拉取请求”图标。这应该会带您进入一个页面,您可以在其中选择目标和源分支。