javascript

git

java

python

git-remote

reactjs

c++

github

django

c#

.net

.net-framework-version

operators

git-fetch

typescript

user-experience

chmod

css

content-type

variables

Git:合并到主文件,同时自动选择使用分支覆盖主文件

我正在使用Git来跟踪我的文档乳胶源。 我想让master分支充满适合最终用户发布的文档,因此当有人需要某些东西时,我可以切换到master分支,编译并分发文档。

当手册需要进行重大更新时,我会创建新的分支。 但是,当手册获得批准后,需要将其重新合并到母版中。 从分支合并到master时,我想向Git传递一些命令,说:“忘记合并,只需使用分支中的文件覆盖master中的文件即可。” 有没有办法做到这一点? 具体来说,我想避免每次都打开合并工具。 提前致谢。

trans by 2020-08-09T18:26:34Z

存储库-git恢复在合并过程中删除的单个文件

我目前在'foo'分支中。 我刚运行git merge master。唯一的问题是foo中有一个我想保留的文件。 有没有办法找回它,但保留合并母版中的所有其他更改?

trans by 2020-08-09T03:14:37Z

git:将文件从另一个分支签出到当前分支(不要将HEAD切换到另一个分支)

我想将另一个分支中存在的文件的不同版本加载到当前分支中。

git help checkout说:

DESCRIPTION
   Updates files in the working tree to match the version in the index or
   the specified tree. If no paths are given, git checkout will also
   update HEAD to set the specified branch as the current branch.

有没有办法签出所有这些文件,但不更新HEAD?

trans by 2020-08-08T16:25:54Z

bash-如何在分离的HEAD中找到当前的git分支

通过执行以下任一操作,我可以找到当前的git分支名称:

git branch | awk '/^\*/ { print $2 }'
git describe --contains --all HEAD

但是,当处于分离的HEAD状态时,例如在Jenkins maven构建的后期构建阶段(或在Travis git fetch中),这些命令将不起作用。

我当前的工作解决方案是这样的:

git show-ref | grep $(git log --pretty=%h -1) | sed 's|.*/\(.*\)|\1|' | sort -u | grep -v HEAD

它显示在HEAD提示中具有最后提交的任何分支名称。 这可以正常工作,但我认为使用git-fu更强的人可能有更好的解决方案?

trans by 2020-08-01T15:25:50Z

git-删除本地开发分支

我最近在系统中克隆了我们的开发代码分支的存储库:

git clone https://gitserver.com/product

克隆成功后,我在查询中获得以下状态:

$ git branch
* develop

我意识到现在该分支需要删除,因此:

$ git checkout develop
Already on 'develop'
Your branch is up-to-date with 'origin/develop'.

$ git branch -d develop
error: Cannot delete branch 'develop' checked out at 'C:/work/test'

我不确定是否应该尝试使用GIT命令或Unix命令'rm -rf'来删除本地开发分支存储库? 最后,为什么没有人可以删除“ develop”分支。

trans by 2020-07-29T20:28:47Z

是否有一个与Eclipse Workspace等效的NetBeans

我喜欢使用NetBeans,尤其是使用Maven进行开发时,但是,我最近发现我在开发周期的不同部分中一直在使用同一代码库的三个不同分支。

Eclipse可以做的一件事是将项目分成不同的工作区,因此我可以根据需要进行的工作,简单地从包含生产补丁程序分支或主干中的Maven项目的工作区启动Eclipse。

我很想在NetBeans中完成此任务,但是还没有找到一种方法来做到这一点。 有任何想法吗?

trans by 2020-07-27T09:00:13Z

如何重命名SVN分支并更新现有沙箱中的引用?

我需要重命名SVN分支,所以我做了:

$ svn move https://server/repos/myrepo/branches/oldbranch \
    https://server/repos/myrepo/branches/newbranch

到目前为止,一切都很好-分支已重命名。

麻烦的是,我们已经从该分支中签出了现有的沙箱,并且当我尝试更新时出现此错误:

$ svn update
svn: Target path '/branches/oldbranch' does not exist

一个不言自明的错误。 快速搜索后,我认为我已经找到了解决方案:在分支重命名之后重新定位SVN工作副本

问题是,当我尝试发出该命令时,出现另一个错误:

$ svn switch --relocate https://server/repos/myrepo/branches/oldbranch \
    https://server/repos/myrepo/branches/newbranch
svn: Relocate can only change the repository part of an URL

据我所知,我使用--relocate命令的方式与Sander Rijken相同。 任何想法为什么我会收到此错误?

trans by 2020-07-24T09:55:49Z

如何在不将两者合并为一个的情况下从默认分支中追赶命名的mercurial分支?

我有两个分支机构。

default    named
|r1
|r2
|r3 --------         named branch created here.
|            |r4
|            |r5
| r6         |
|            |r7
|            |
-----------> | r8    How do I achieve this catch-up?
|            |

我想从默认状态更新命名分支,但是我还没有准备好合并分支。 我该如何实现?

编辑:

另外,该操作将使用GUI做什么?是..右键单击r6,与...,r8合并,然后呢? 提交到命名分支?

trans by 2020-07-24T05:18:21Z

共享功能分支的正确Git工作流程?

我正在尝试找出适合这种情况的正确工作流程:

在共享仓库上,我们有以下分支:

-master
-feature

功能分支是共享分支,因为许多开发人员正在共同开发新功能。 他们正在积极地将其更改推向功能分支。

我正努力避免在功能最终合并回master的那一天发生“冲突地狱”。 目前,我看到一些选择:

1)主动将master合并为功能,并经常执行。 但是,不建议在git docs中使用它,我开始了解原因。 当我尝试这样做时,我似乎一遍又一遍地解决了相同的冲突。

2)以某种方式使用rebase。 我已经阅读了此内容,但是由于功能分支实际上是共享的,因此它似乎无法正常工作。 只需要一名开发人员进行2个基准调整,其他开发人员可能会因历史记录不匹配而发生冲突。

3)将功能分支转变为集成分支,并让开发人员使用自己的独立功能分支进行基础调整,以使事情保持理智。

4)完全不同吗?

trans by 2020-07-23T17:36:30Z

git-我从哪里分支?

我回到了一个旧项目,然后运行了git status来弄清楚发生了什么,并且我发现分支太多了! 我想先做一些内部整理工作,然后再开始进行此工作,但是我不确定哪个分支来自哪个分支。

例如。 “ branchA”是否源自“ develop”? “ branchB”是源自“ master”还是“ branchA”?

我如何回答上面的示例问题?

trans by 2020-07-22T23:36:38Z

SVN分支机构

如何将一个分支与另一个分支进行比较? 我想将一个分支与主干中的最新修订进行比较。

trans by 2020-07-20T21:10:34Z

branch-在Git中,列出未推动提交的分支名称

给定一个具有多个本地分支的项目,每个分支都跟踪一个远程分支,是否有一条命令列出了所有未按下提交的分支? (即,即使这些分支都没有签出。)

我既不想自己查看提交,也不想看到最新的分支,我只想查看哪些分支在其远程控制之前。

我已经尝试了git log --branches --not --remotes --simplify-by-decoration --decorate --oneline,但似乎并没有显示我的需求。 在我当前的仓库上运行它没有输出,但是在我当前的分支上运行git branch -v显示refs/heads

git log --branches --not --remotes --simplify-by-decoration --decorate --onelinegit branch -v都显示最新的分支以及需要推送的分支。 但是,它们都将我当前的分支显示为refs/heads

我发现的其他命令,例如。 git log --branches --not --remotes --simplify-by-decoration --decorate --onelinegit branch -v列出提交本身,而不列出分支。

附带问题:为什么git log --branches --not --remotes --simplify-by-decoration --decorate --oneline的输出不包括git branch -v前面显示的分支? 前一个命令不是仅查看哪个refs/heads与已知的遥控器不对应吗? 所以列出为[ahead 2]的分支机构不符合此条件吗?

trans by 2020-07-14T05:20:11Z

分支-Git:仅合并一个commi

通常,我在Git中使用分支,但是我不喜欢在工作树中看到数百个分支(Git历史)。 我想知道Git中是否有一种方法可以仅一次提交(理想情况下带有清晰的提交消息)来“联接”分支中的所有提交。

像这样:

git checkout -b branch
<some work>
git commit -a -m "commit 1"
<some work>
git commit -a -m "commit 2"
<some work>
git commit -a -m "commit 3"
git checkout master
git SUPER-JOIN branch -m "super commit"

此后,git日志中将仅存在“超级提交”。

trans by 2020-07-13T16:06:21Z

tortoisesvn-工作副本以外的路径上的SVN Mergeinfo属性

我有一个SVN信息库,其中有主干和分支。

我打算定期将中继线合并到分支中,但是,当我这样做时,除了实际的文件内容更改之外,我还看到许多属性状态更改。

在进一步调查中,属性更改为mergeinfo属性。 我不希望这样,因为我们总是从最高根级别分支并合并。

在合并主干之前,我使用了svn propdel命令并从分支WC中删除了所有mergeinfo属性(然后恢复了对根的更改),问题消失了。

所以问题是,我的分支如何在子目录级别获得所有这些mergeinfo更改?

trans by 2020-07-12T03:57:23Z

分支-将分支推到Gi

我有一个正在使用的本地存储库,其远程托管在GitHub上。 我最近创建了一个分支并开始进行工作,进行了几次提交,现在希望将该分支推送到GitHub并将其拉到另一个克隆的存储库中。

要做到这一点需要做些什么?

如果使用GitHub无法做到这一点,我很高兴知道如何正常进行。

trans by 2020-07-04T13:50:22Z

github-如何从另一个分支(开发)更新我正在工作的Git分支?

像一个月前一样,我为代码创建了一个新分支,我从developer分支创建了feature1分支。

⇒  git branch 
  develop
* feature1

我已经使用Feature1了一个月,并且许多更改都被推送到了开发分支上,如何使用开发一个的最新提交来更新当前的分支Feature1?

我不想签出master并合并我的feature1分支。 我也不想使用git cherry-pick手动将提交从开发移动到feature1。

有什么帮助吗?

trans by 2020-07-02T11:42:16Z

分支机构-管理Mercuri中的发行分支机构

最近,我从SVN切换到了Mercurial。 现在,我想知道如何根据良好实践在Mercurial中实现预期的分支工作流程,希望其他开发人员了解存储库中发生的情况。

这是工作流程:

  1. 通常,我有一个主干/默认分支,其中发生了当前版本系列的工作。 假设是1.x。 同时,我使用分支2.x来处理下一个主要版本。 该分支中的更改可能是重大的,因此与trunk / default / 1.x分支合并在这里毫无意义。
    • 过一会儿,在2.x上的工作可能会完成,并且会发布2.0版。 现在,我希望2.x分支成为新的default / trunk分支,而当前的默认/ trunk成为1.x分支。
    • 重复此过程,可能会出现一个新的3.x分支。 与以前一样,如果发布了3.0,则3.x应该成为新的默认分支,而当前的默认应该再次成为2.x分支。

我的问题不是这种工作流程是否很好(我想这从根本上来说不是错误的)。 我的问题是,我在Mercurial中实现这一目标的方式是否可以看作是一种良好做法,还是有更好的机会。

所以这是我计划在Mercurial管理分支机构的方式...

从具有单个分支的存储库开始,该分支包含当前版本1.x的代码:

$ hg init
$ echo "hello world" > file1.txt
$ hg ci -A -m "Initial commit of 1.x code"

开始使用2.x版:

$ hg branch 2.x
$ hg ci -m "Create new branch for 2.x development"
$ echo "Big new feature for 2.x" > file2.txt
$ hg ci -A -m "Add big new feature"

同时,在当前版本的系列(1.x)中做一些工作:

$ hg up default
$ echo "Minor adjustments specific for 1.x" > file3.txt
$ hg ci -A -m "Minor adjustments"

经过一段时间的发布2.0准备就绪,yippee! 将默认分支设置为1.x,将2.x设置为默认:

$ hg up default
$ hg branch 1.x
$ hg ci -m "Make default branch to 1.x branch"
$ hg up 2.x
$ hg ci --close-branch -m "Close branch 2.x"
$ hg branch --force default
$ hg ci -m "Make former 2.x branch to new default"

现在创建一个新的分支3.x并在其中工作,也可以在默认情况下工作。 同样,在3.0就绪之后,该再次管理分支名称了:

$ hg up default
$ hg branch --force 2.x # (reuse previously closed 2.x branch name)
$ hg ci -m "Make default branch to 2.x branch"
$ hg up 3.x
$ hg ci --close-branch -m "Close branch 3.x"
$ hg branch --force default
$ hg ci -m "Make former 3.x branch to new default"

现在,回购可能看起来像这样('o'是头):

o Branch default (3.x)
|
| o Branch 2.x
 \|
  | o Branch 1.x
   \|
    |
    .

我不确定的要点是,重用分支名称并使用分支名称默认值是一种好习惯。

关于这个问题的很多文字-抱歉-但我想清楚自己在做什么。

trans by 2020-07-02T09:35:56Z

git-如何保护github中的“ master”?

我的github项目中有几个贡献者。 我只允许其中一个“推”掌握。 这个家伙不是我(存储库的所有者)。 有可能吗?

trans by 2020-06-26T10:13:57Z

svn-Subversion-有人应该从主干开发吗?

使用Subversion时,开发人员应该在主干上工作还是应该仅将主干用于每个开发人员分支的合并,并由持续集成服务监视?

trans by 2020-06-24T13:21:28Z

git-提交消息中的Change-Id丢失时出现Gerrit错误

我在远程存储库中设置了一个分支,并对该分支进行了一些提交。现在,我想将远程分支合并到远程主服务器。

基本上是我的操作:

  1. 结帐分支
  2. 结帐大师
  3. 合并分支并修复合并错误
  4. 承诺
  5. 推送原点HEAD:refs / for / master

但是,请在第5步获取错误消息:

remote: Resolving deltas:   0% (0/12)

remote: ERROR: missing Change-Id in commit message
...

remote: Change-Id: I55862204ef71f69bc88c79fe2259f7cb8365699a

To ssh://prc@test.gerrit.xxx.com:29418/hello_git
 ! [remote rejected] HEAD -> refs/for/master (missing Change-Id in commit message)
trans by 2020-06-21T20:52:54Z

1 2 3 4 5 6 7 8 下一页 共8页