加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

版本控制 – mercurial hg部分签入

发布时间:2020-12-20 12:22:29 所属栏目:Python 来源:网络整理
导读:这是一个非常简单和愚蠢的问题, 我正在处理2个任务并修改了代码中的2组文件. 现在当我输入’hg ci’时,它会检入所有文件.我可以从签到中删除某些文件,即只检查一项任务吗? 如果我删除“签入消息”中的文件,它们将从签入中删除 感谢所有的答案 这似乎是一个
这是一个非常简单和愚蠢的问题,

我正在处理2个任务并修改了代码中的2组文件.

现在当我输入’hg ci’时,它会检入所有文件.我可以从签到中删除某些文件,即只检查一项任务吗?

如果我删除“签入消息”中的文件,它们将从签入中删除

感谢所有的答案

这似乎是一个很大的缺陷,我的用例非常简单和一般.大部分时间开发人员正在处理各种任务,有些已准备好,有些则没有,错误修复等.

现在唯一简单的解决方案似乎是多个本地回购或克隆

解决方法

开箱即用的mercurial是不可能的.正如已经建议的那样,有几种方法可以选择要提交的文件.要通过提交消息模板获取此功能,您需要包含commit命令的扩展或 shell脚本.这是一种方法:

[alias]
ci = ! hg-partial-commit

HG-局部提交:

#!/bin/sh
# partial commit

edit=$(mktemp ${TMPDIR:-/tmp}/$(basename $0).XXXXXXXXXXXX)
filelist=$(mktemp ${TMPDIR:-/tmp}/$(basename $0).XXXXXXXXXXXX)
logmessage=$(mktemp ${TMPDIR:-/tmp}/$(basename $0).XXXXXXXXXXXX)
cleanup="rm -f '$edit' '$filelist' '$logmessage'"
trap "$cleanup" 0 1 2 3 15

(
    echo user: $(hg debugconfig ui.username)
    echo branch: $(hg branch)
    hg parents --template 'parent: {rev}:{node|short}  {author}  {date|isodate}n'
    echo
    echo 'Enter commit message.  Select files to commit by deleting lines:'
    hg status 'set:not unknown()' | sed -e 's/^/@/'
) | sed -e 's/^/HG: /' >"$edit"

${VISUAL:-${EDITOR:-vi}} "$edit"
egrep -v '^HG:' "$edit" >"$logmessage"
egrep '^HG: @' "$edit" | cut -c8- >"$filelist"

hg commit -l "$logmessage" "listfile:$filelist"
$cleanup

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读