C#中的提交和回滚
这是我的C#Winform代码,我有2个存储过程,在Table1中插入的第一个过程,第二个在Table2中进行更新,都在for循环中.请指导我如何使用此代码中的提交和回滚,因为我有gridview和gridview有很多行,如果有任何行有不正确的数据,则没有插入和更新表中的行 try { con.Open(); da = DateTime.Now; if (txt_challanno.Text == "") { //MessageBox.Show("Insert Order No.", "Message Box Sample", MessageBoxButtons.OK, MessageBoxIcon.Error); toolTip1.ToolTipIcon = ToolTipIcon.Warning; toolTip1.ToolTipTitle = "Warning!"; toolT
10 2024-04-25
编程技术问答社区
Subversion和混合修订:破坏构建的秘诀?
我只是在使用TF之后又回到颠覆了一段时间,一般我已经退出了:) 我记得有不同的一件事.我不记得能够从过时的工作副本中提交.或者,也许我的记忆使我对"过时"的定义失败.我以为"过时"意味着自上次更新工作副本以来,任何文件都已被触摸,而不仅仅是我在当地触摸的文件已被触摸(我称之为冲突). 我认为这是一个问题的原因是,如果我可以在不先与他人所做的更改集成的情况下进行更改,那么它使"破坏构建"非常容易. 那么,这种混合革命的东西添加了很大,还是我只是我? 解决方案 是你,因为它一直都是这样的; - ) 如果您要提交的任何项目都过时,并且存储库有一个"一般"修订号,但是只要您要提交的一切都可以 - 迄今为止,您可以提交.这并不意味着这当然是最好的做法. 请记住,SVN不仅用于软件开发中.通常,这种能力可能很不错. ,此外,Afaik TFS在这方面工作非常相似,对吧? 其他解决方案 简短的答案:通常,最好制作旨在将开发人员的桌子从刚检查的标签中留
14 2024-04-05
编程技术问答社区
用subversion在提交时构建
简单的问题.我使用Visual Studio,并且我刚刚安装了颠覆,如何强制使用MSBuild构建该项目,如果成功构建,请提交该项目,请警告用户.如果他们有能力强迫构建犯罪者(我知道这不是他们的用法),我将使用totoisesvn或visualsvn或ankhsvn(无论叫什么)我想知道是否可以使用任何这些工具来完成此额外的事情. 要结束我只是在寻找一种无痛的方法来建立颠覆之前. 解决方案 看一下Teamcity的简而言之,您"承诺"团队合作,Teamcity仅在建筑物通过时才能验证您的构建并致力于真正的存储库.如果没有,您会被告知.这里的优点是您的树干永不破裂.您可以在这里阅读有关它的更多信息其他解决方案 tortoisesvn具有其他解决方案 您也可以使用CruiseControl,Hudson或其他连续集成工具. 这些可以在后台运行,注意更改然后构建.
10 2024-04-04
编程技术问答社区
如何在Master中找到所有未合并的提交,并按其创建的分支分组?
我必须从未合并的分支机构中创建一些代码审核. 在寻找解决方案时,我们不要去局部分支上下文问题,因为这将在服务器上运行;将只有 Origin 遥控器,我将在其他命令之前始终运行 git提取origin 命令,当我们谈论分支机构时,我们将参考 origin/分支名称. 如果设置很简单,并且每个源自主的分支继续以自己的方式继续进行,那么我们可以运行: git rev-list origin/branch-name --not origin/master --no-merges 对于每个未合并的分支,并将结果提交添加到每个分支的每个评论中. 当2-3个分支之间合并时,问题出现了,其中一些分支继续进行.就像我说的那样,对于每个分支机构,我想创建代码评论编程,我不想在多个评论中包括一个提交. 主要是为每个提交找到原始分支而减少问题. 或更简单...找到由他们的分组分组的所有未合并的提交. 让我们关注一个简​​单的示例: * b4 -
14 2024-04-03
编程技术问答社区
在两个实例之间对GIT分支完成的表演提交
我有一个由开发分支创建的释放分支.之后,其他开发人员都承诺对两个分支机构类似.几天前 现在,我们需要知道所有在释放分支创建和关闭它之间进行"开发"的投入. 请帮助 解决方案 找到分支开始/终点差异的一种简单但有效的方法是"图形方式"查看回购树 - 很容易看到所有提交: git log --graph --decorate --all --oneline 然后查看分支分开并重新加入的位置. 然后简单地在短距离上进行差异: git diff 1a2b3c4 1a2b3c4 如果您只想快速查看文件: git diff 1a2b3c4 1a2b3c4 --name-only 其他解决方案 以来,由于旧 现在已经过时了,您可以使用 GH CLI扩展. 它解决 . gh extension install kyanny/gh-browse-compare gh alias set compare 'browse-compare' #
22 2024-04-03
编程技术问答社区
git clone不会下载所有东西
如何使用git克隆下载存储库的所有内容?具有特殊符号的文件夹(如下所示)未下载. 我环顾四周,看到了这个命令,但对我来说没有解决.还有哪些其他选择? for remote in `git branch -r`; do git branch --track $remote; done 解决方案 看起来好像它们可能是 git subsodules .假设是这样,您可以像这样克隆存储库: git clone --recursive REPO_URL 或从已经克隆的存储库中: git submodule init git submodule update 无论如何,一定要阅读我链接到的文档,以了解subsodules的情况.
12 2024-04-03
编程技术问答社区
git log -cherry-pick A...B-我做错了什么?
为了在分支上找到提交working不合并/选择master,但我正在运行 git log --format="%h %aN %ai %f" --cherry-pick --no-merges master..working 在这里. 但如所述'M查找master> 和 working仅由于樱桃挑选而变化的提交. . working均未合并到master,反之亦然. 即使我手动将提交从working到master>>>>>>> Acutly --cherry-pick似乎根本没有效果,如|wc. 我在做什么错? 更新: 实际上Elpiekay和Torek都是正确的,我的初始命令也可以工作.不幸的是,我不知道我们在使用一些"樱桃挑剔"的魔法,我不知道在樱桃挑选后哪种变化 . 解决方案 AS elpiekay in评论,您需要三点符号.但是,仅添加三点符号是不够的:您还需要添加--right-only或--right-only(取
14 2024-04-03
编程技术问答社区
在git历史上删除一个有多个分支的特定提交?
我知道如何使用git rebase --interactive. 我的问题涉及此类历史更复杂的情况: A--X--B--C--D \ E--F 我想在哪里删除提交X.问题是,在这种情况下,与父母有两个或更多的分支(在这种情况下为B)在他们的历史中具有X,因此一个git rebase -i不会做到这一点(至少我不知道如何). 是否有一种简单的方法来删除X,还是我必须依靠自己重新审视所有分支机构,可能是使用shell脚本? 解决方案 不幸的是,在这种情况下,Git并不容易.首先,通过删除commit x. 您将拥有以下历史记录: A--X--B \ \ \ E--F \ B'-C'-D' 然后,您需要将F分支反射到B'上: git rebase --onto B' B F (用ID替换名称) 最终会出现 A--B'-C'-D' \ E'
12 2024-04-03
编程技术问答社区
git删除合并后的提交
我有以下问题... 我试图将一个远程分支合并到我的本地,然后将更改推向回购...好吧,我取了三个投入的远程分支,但其中一个尚未完成,所以我不做想要将这些承诺之一推向仓库...当我运行git日志时,它向我展示了: 我想删除提交A2 ...我该怎么做?我正在搜索,有人说要使用git rebase或git重置,但是我不确定我应该使用哪一个...以防万一,我没有推动这些更改 感谢您的帮助 解决方案 如果您还没有推动合并提交(这也意味着也没有推动A2),则可以互动地重新构想: git rebase -i HEAD~3 现在删除合并提交行.然后,重新排序提交,以使A2是最新的.完成后,分支: git branch incompleteFeature 然后将主重置为先前的提交: git reset --hard HEAD^ 现在,您可以正确同步,不完整的功能将位于自己的分支中,直到您决定在准备就绪时将其合并为止. 希望这会有所帮助
8 2024-04-03
编程技术问答社区
在新的分支中使用待定分支变化的正确程序
您将拉力请求提交合并Branch A中的主体. 在等待时(1小时左右)时,您想在等待时使用分支的待处理功能 应该Branch B是Branch A 的分支 或应该Branch B是master的分支,然后合并Branch A 解决方案 简短的答案:使用另一个勒奎斯可能很危险.然后,您仍然可以开发B功能,有两种方法可以: 在A分支中开发它并更新您的原始拉值,以便它包含两个功能或 在临时分支中开发它(可以在您喜欢的任何地方),但是在合并A之后,将您的工作重新置于该合并中. 长答案: 一(但不是唯一的)要提防的事情是 创建分支A从某些主提交a0 代码功能A Merge A和后来的一些主提案b0并创建分支B那里 代码功能B 合并A在拉值合并期间掌握 现在合并B与主人将是CRIS-CROSS: 您可以解决此确切问题.例如,您可以将主机合并到A,将其推进到合并,然后启动分支B.然后,随后的合并B将不会是纵横交错: 但是还有更多可能出现的问
4 2024-04-03
编程技术问答社区
Git。从另一个分支只添加文件的某些部分的最佳方法?
假设您有一个分支master和另一个分支production,均包含文件prog.py的版本,以及许多其他文件.想象一下,您修改了生产分支中的许多文件,包括prog.py.现在,仅在production prog.py上仅具有prog.py上的某些更改的最佳方法是什么? 我开始搬到master分支,然后从production分支导入文件: git checkout master git checkout production -- prog.py 因为我希望能够做git add -p并手工选择更改.问题在于prog.py既在工作树中,又在索引中.如何在不触摸工作树的情况下将其从索引中删除? 或者有更好的方法可以从production分支中导入prog.py中的哪些更改?master分支? 解决方案 我不确定在问这个问题时是否正确,但是使用当前版本的GIT,您可以执行以下操作: git checkout -p production -- prog.py
10 2024-04-03
编程技术问答社区
从远程git仓库恢复未参考的提交内容
以下情况是:在远程存储库中进行了一些提交. 不幸的是,某人做了push -f,因此没有远程分支参考这些提交. 使事情变得更糟,我在本地克隆中没有这些提交. 我的目标基本上是恢复这些提交.这些是我尝试的一些事情: git checkout -b recovery :致命:参考不是树 git push origin :recovery 错误:refs/head/恢复没有指向有效的对象!错误: 无法推到无限制的目的地:恢复目的地 refspec既不匹配遥控器上的现有参考,也不匹配 参考/,我们无法根据源参考 猜测前缀 存储库位于Bitbucket上,并且可以从Web界面访问该提交,因此尚未收集垃圾. 解决方案 问题是您的本地存储库没有该提交ID. git checkout -b recovery git push origin :recovery 出于
18 2024-04-03
编程技术问答社区
JGit : 如何在遍历仓库时获得Branch
缺少JGIT文档似乎在使用RevWalk时如何使用/检测分支. 这个问题东西. 所以我的问题是:如何从RevCommit获取分支名称/ID?或如何在手动前指定哪个分支? 解决方案 通过循环分支找到了一种更好的方法. 我通过调用 在分支上循环 for (Ref branch : git.branchList().call()){ git.checkout().setName(branch.getName()).call(); // Then just revwalk as normal. } 其他解决方案 查看JGIT的当前实现(请参阅其git repo 及其 git:查找一个犯罪分支来自". 即: git branch --contains 仅实现了git branch的某些选项(例如 ListBranchCommand.java ). 其他解决方案 可以使用以下代码来获取"从"从"分支: /
10 2024-04-03
编程技术问答社区
一旦提交被合并,我怎样才能跟踪它们的来源?
我的公司没有使用git(我们有效地使用CVS)维护存储库,但我在本地保留自己的理智.过去,我想提出与bug-report-abcde相关的提交.我可以通过提交消息来查找bug-report-abcde并浏览它们.目前,我有一个emacs函数,可以在提交中提供当前的分支名称为"标题": Title Summary summary summary Branch: bug-report-abcde 因此,我的问题是:这是在将提交合并到另一个分支之后找到哪个分支的最佳方法?还是有一种方法可以从git本身提取此信息? 解决方案 git不会通过设计跟踪此信息. http://markmail.org/message/yfb5ihwddjmrstz6 So don't think of it as "git throws away branch identity" as much as "git never cared about branch identity in t
14 2024-04-03
编程技术问答社区
如何将提交的内容转移到另一个分支?
我想将我的最后几个提交从主人分支转移到自己的分支中. 我的PC上的树看起来像: W (some branch) / X1--X2--X3--X4--Y--Z1--Z2 (master) 我希望它看起来像: W (some branch) / X1--X2--X3--X4 (master) \ Y--Z1--Z2 (my new branch) 但是,github的树看起来像: W (some branch) / X1--X2--X3--X4--Y (master) 这就是我看到的解决方案,以将最后一个承诺转移到另一个分支: git checkout master git branch my_new_branch git reset 我的问题是:将提交进入新分支后,我是否可以成功地推向GitHub
16 2024-04-03
编程技术问答社区
如果一个提交是通过标签而不是通过分支提及的,它是否会被垃圾回收?
我有一个带注释的标签,指的是提交的标签(如果被注释是否重要?),没有分支参考.一段时间后会收集垃圾吗? 解决方案 否,该提交不会收集垃圾.标签的引用足以使提交活着. 其他解决方案 标签和分支都是 refs ,如果ref指向提交,则不是收集垃圾.您也可以拥有自定义裁判,但这些裁判并不常见.
8 2024-04-03
编程技术问答社区
Git推送所有内容到新的起源
我删除了以前的git起源,并创建了一个新的git.我确实添加了.和git犯罪.但是它将更新更改,我如何将所有内容都推入新来源 解决方案 git remote add origin git push origin 其他解决方案 (使用Git 1.8.4) 如果您想一次推动所有分支一次: git push --all 按所有标签: git push --tags 其他解决方案 嗯,我只是做到了.我不确定您是否完全一样,但是我有不同的方法. 我在" newserver"(使用SSH)上设置了一个裸露的存储库.在我的笔记本电脑上放了仓库的完整克隆. 我这样做了: git remote set-url origin "newservers url" git push origin master
8 2024-04-03
编程技术问答社区
针对标签的Git提交,没有分支
如果我在没有创建分支的情况下查看了标记的源代码版本,则git表示我根本没有与任何分支相关联.很高兴让我进行更改并检查它们.这些变化去了哪里?如果我切换回"主人",它们消失了(被主人中的东西覆盖),我似乎再也找不到它们了.是什么赋予了?如果git让我对本质上是一个匿名分支的更改,我肯定可以让他们回来? 解决方案 由于您的 commit不在任何分支上,因此,除非您使用其SHA1结帐该特定的提交,否则您在工作目录中看不到它.您可以通过查看reflog跟踪从存储库中检查的内容的变化来找到提交.如果您的标签是XXX您会看到类似的东西: $ git reflog 7a30fd7... HEAD@{0}: checkout: moving from master to XXX ddf751d... HEAD@{1}: checkout: moving from 96c3b0300ccf16b64efc260c21c85ba9030f2e3a to master 96c3b03... HE
8 2024-04-03
编程技术问答社区
Git的新文件出现在所有分支中
我认为在我合并或重新分支之前,在一个分支上创建的文件不会出现在任何其他分支中? ? 示例: 我有两个分支: 主人 new_contact_page 我检查 new_contact_page 分支. $ git checkout new_contact_page 然后我创建一个新文件. $ vi contact_page.html 不执行任何git命令,我切换回我的主人分支. $ git checkout master 然后,我看到此contact_page.html文件也在我的 Master 分支中. $ ls (contact_page.html shows up in the list!) 该文件不应该仅在 new_contact_page 分支中存在? 不应该存在. 解决方案 git永远不会触摸您存储库中实际上没有的任何文件. (未跟踪的文件) 您需要先git add和git commit gi
10 2024-04-03
编程技术问答社区