标签: workflow

如何在同一个Git存储库中同步两个分支?

这是我经常遇到的常见工作流障碍:

主人是我们的"稳定"分支

$ git status
# On branch master
nothing to commit (working directory clean)
Run Code Online (Sandbox Code Playgroud)

在分支上创建模块

$ git checkout -b foo
$ echo "hello" > world
$ git add .
$ git commit -m "init commit for foo module"
$ git checkout master
$ git merge foo
Run Code Online (Sandbox Code Playgroud)

在主人或其他分支机构工作

在接下来的几周内,将有更多代码直接由其他分支机构提交.foo分支将在这段时间内不受影响

在foo分支上恢复工作/进行更新

$ git checkout foo
Run Code Online (Sandbox Code Playgroud)

不好了!foo已经过时了!我理解为什么,但我确实需要foo重新同步.

这个问题

如何从foo分支机构获取最新内容?

git workflow git-rebase git-branch

29
推荐指数
2
解决办法
3万
查看次数

[GitHub Actions]:创建 Artifact 容器失败:已达到 Artifact 存储配额。无法上传任何新工件

我有一个 GitHub 工作流程,可以为我的 Flutter 应用程序创建 APK。直到最近这一切都很好,我似乎已经耗尽了某种配额。现在,当工作流程运行时,我收到此错误:

Create Artifact Container failed: Artifact storage quota has been hit. Unable to upload any new artifacts
Run Code Online (Sandbox Code Playgroud)

我认为删除所有工件会再次释放空间,因此我使用了另一个工作流程来实现此目的:

name: 'Delete old artifacts'

on:
  push:
    branches:
      - master
      - develop
  pull_request:
    branches:
      - master
      - develop

jobs:
  delete-artifacts:
    runs-on: ubuntu-latest
    steps:
      - uses: kolpav/purge-artifacts-action@v1
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          expire-in: 0days
Run Code Online (Sandbox Code Playgroud)

新的工作流程似乎正在运行,我不再在 GitHub UI 中看到旧文件。但是,在尝试运行 APK 工作流程时我仍然收到错误。有什么想法如何修复这个错误吗?


更新

我的 GitHub 说我已经用完了包含的服务(免费版本)。有办法撤销吗?仅仅删除工件似乎还不够。 在此输入图像描述

workflow github github-actions

29
推荐指数
4
解决办法
3万
查看次数

在公共功能分支中使用git rebase

您可以看到网络上的所有人都建议不要git rebase在公共分支中使用,但如果您总是重新定义功能分支,我看不出有什么问题.

我的团队总是使用分支功能(哇),我们习惯只在本地使用它,所以rebase不是问题,但有时我们想向另一个开发人员展示部分完成的功能的代码,所以我们只是宣传它,但是我们失去了所有的优点git rebase,或者至少是你在网上可以阅读的内容.

我不明白是什么问题,如果在同一个公共分支工作的开发人员从未将它合并到任何分支(当该分支上仍有开发时),并且当他们拉动它时,他们使用rebase操作.对分支所做的任何更改都将始终在远程分支的顶部进行rebase,因此永远不会丢失,并且您不会遇到重复相同提交的问题.

附加1:

到目前为止,没有一个答案显示了将要发生的问题以及它将如何发生,所以我将试着更清楚.

我将举例说明使用rebase的工作流程(在前面的段落中描述得很糟,抱歉)我没有看到任何问题.

初始状态:

master         ==========A
origin/feature           +=====AB
feature user A           +=====AB
feature user B           +=====AB
Run Code Online (Sandbox Code Playgroud)

master得到一些提交,用户A做了一些提交:

master         ==========A=====C
origin/feature           +=====AB
feature user A           +=====AB====D
feature user B           +=====AB
Run Code Online (Sandbox Code Playgroud)

用户A做了git pull --rebase(他总是这样做)来更新他的分支,没有新的东西,然后他重新掌握并推送:

master         ==========A=====C
origin/feature                 +=====ACB'=====ACB'D
feature user A                 +=====ACB'=====ACB'D
feature user B           +=====AB
Run Code Online (Sandbox Code Playgroud)

(注意B'是仍然代表变化B的新提交)

然后用户B做了一些提交:

master         ==========A=====C
origin/feature                 +=====ACB'=====ACB'D
feature user A                 +=====ACB'=====ACB'D
feature user B           +=====AB======E
Run Code Online (Sandbox Code Playgroud)

用户B终于做了一次git pull --rebase,没有必要对master进行rebase,所以他只是推动:

master         ==========A=====C
origin/feature                 +=====ACB'=====ACB'D======E'
feature user …
Run Code Online (Sandbox Code Playgroud)

git workflow

28
推荐指数
3
解决办法
1万
查看次数

28
推荐指数
1
解决办法
1万
查看次数

如何绘制(可视化)git工作流程

你肯定知道那些不错的git时间表图表,可视化git分支策略和工作流程.

我根据客户的特定需求创建了一个git工作流程.为了交出我的工作,我不想扫描我的图纸,也不喜欢摆弄p​​hotoshop.有没有免费工具来创建它们?(即确定它们 - 但是这些中的任何一个特别适合于任务吗?)理想情况下它们是基于网络的,或者至少容易学习这样的一次性场合.(不,LaTeX不是:))

谢谢!

git workflow

28
推荐指数
2
解决办法
2万
查看次数

git工作流:我可以阻止某个文件合并到另一个分支但仍保持在版本控制之下吗?

我有一个包含两个分支的存储库:live和stage.存储库包含基于Web的应用程序的代码.我想为舞台和现场分支维护两个不同的.htaccess文件,但仍然保持它们的版本控制,因为服务舞台网站的性质有点不同(例如,现在,我希望缓存定时不同).

我是git的新手,所以可能有一个简单的解释,但我想有一个工作流程,当我在现场和我拉变化(简单git merge stage)时,我没有覆盖现有的.htaccess在现场科.有没有办法配置这个?我在git中错过了一些重要的概念吗?

同样地,还有一大块(但可能很多).html文件,我想跟踪变化但不将它们合并回实时.为了清楚起见,我希望live和stage能够跟踪这些文件中的更改,但知道在进行合并时不要合并这些特定的更改.

git workflow git-merge

27
推荐指数
2
解决办法
1万
查看次数

您如何知道什么时候需要BPM解决方案?

我的客户正在寻找业务流程管理(BPM)解决方案.他们需要的是简单的文档路由和批准系统.实施BPM系统的驱动因素是什么?开发人员建议实施BPM解决方案与工作流工具或自定义开发的门槛是多少?

jBPM什么时候适合?内置于应用程序中的状态机何时适合?应该存在哪些问题,确定您需要使用类似于jBPM的解决方案?

我正在寻找一些现实世界的例子"我们试图自己构建解决方案,但最终因为_而使用AquaLogic/jBPM/Lombardi ".请填写空白.

architecture workflow business-process-management

26
推荐指数
3
解决办法
1万
查看次数

F#中是否有标准选项工作流程?

在standrd F#库中是否有一个选项(也许)wokflow(monad)?

我发现手工制作实现的打(1,2)这个工作流程的,但我真的不希望引入非标准的,而不是非常信任的代码到我的项目.谷歌和msdn的所有可想象的查询都不知道在哪里可以找到它.

monads workflow f# option maybe

26
推荐指数
2
解决办法
3842
查看次数

经常修改模型时的Django工作流程?

因为我通常不在Django项目中进行模型的预先设计,所以我最终修改了模型,因此每次都删除我的测试数据库(因为"syncdb"不会自动为你更改表格).下面是我的工作流程,我想听听你的.欢迎任何想法..

  1. 修改模型.
  2. 删除测试数据库.(对我来说,总是一个简单的sqlite数据库.)
  3. 运行"syncdb".
  4. 通过代码生成一些测试数据.
  5. 转到1.

关于这个的第二个问题..如果您的工作流程如上所述,您如何执行4.步骤?您是手动生成测试数据还是在Django应用程序中有适当的挂钩点,您可以在服务器启动时注入测试数据生成代码?

TIA.

python django workflow django-models django-syncdb

25
推荐指数
4
解决办法
3763
查看次数

有一个很好的ClojureScript工作流程吗?

我正在尝试将ClojureScript用于项目.要成为一个快乐的开发人员,我需要一个快速的反馈循环:编写一些代码并尽快看到它.我也喜欢在当前页面的上下文中使用REPL.

我正在使用lein-cljsbuild和从我遇到的问题我认为我没有正确设置它.

首先,即使在"JWM热身"之后,小文件的编译时间也太大了:optimizations :simple:

Compiling "resources/public/js/cljs.js" from ["src-cljs"]...
Successfully compiled "resources/public/js/cljs.js" in 8.233018 seconds.
Compiling "resources/public/js/cljs.js" from ["src-cljs"]...
Successfully compiled "resources/public/js/cljs.js" in 5.522989 seconds.
Compiling "resources/public/js/cljs.js" from ["src-cljs"]...
Successfully compiled "resources/public/js/cljs.js" in 8.144354 seconds.
Run Code Online (Sandbox Code Playgroud)

其次,我不时会得到这样的东西:

Compiling "resources/public/js/cljs.js" from ["src-cljs"]...
Compiling "resources/public/js/cljs.js" failed.
Exception in thread "main" java.lang.NullPointerException
at java.util.regex.Matcher.getTextLength(Matcher.java:1140)
at java.util.regex.Matcher.reset(Matcher.java:291)
at java.util.regex.Matcher.<init>(Matcher.java:211)
at java.util.regex.Pattern.matcher(Pattern.java:888)
at clj_stacktrace.utils$re_gsub.invoke(utils.clj:6)

# ... many similar useless lines

at clojure.lang.Var.applyTo(Var.java:532)
at clojure.main.main(main.java:37)
Run Code Online (Sandbox Code Playgroud)

这些堆栈跟踪(大部分时间与语法错误有关,正如我从实验中所理解的那样)比没有帮助更糟糕:它们不仅提供关于错误的零线索,还停止自动重新编译.在每次这样的堆栈跟踪之后,我应该做这些事情:

  • 找出问题是什么,使用我称之为"假装你是解析器"的技术.感谢上帝,它是Lisp,我唯一应该做的就是仔细计算匹配的括号.
  • 按下运行Cmd-C的shelllein cljsbuild auto
  • 再跑 …

workflow clojure read-eval-print-loop clojurescript

24
推荐指数
2
解决办法
2072
查看次数