version-control相关内容

在git中删除分支是否将其从历史记录中删除?

从svn开始,刚开始熟悉git。 当一个分支在git中被删除时,它是否会从历史中删除? 在svn中,您可以通过恢复删除操作(反向合并)轻松恢复分支。和svn中的所有删除一样,该分支从不真正删除,它只是从当前树中删除。 如果该分支实际上从git中的历史中删除,会发生什么到从该分支合并的更改?它们是否保留? 解决方案 分支只是指向git提交的指针。在git中,每个提交都有一个 ..
发布时间:2018-04-26 12:59:44 其他开发

单独开发者的最佳版本控制

我现在是一个独立的开发者,请分享您关于单独开发人员的良好VC设置的经验。 我的约束是; $ b 我在多台机器上工作,需要保持同步 有时我离线工作 我正在使用Subversion(只是客户端到远程服务器),而且工作正常。我对Mercurial和git DVCS感兴趣,但没有一个用例对我的情况有意义。 编辑:我将我的主动开发迁移到化石 解决方案 可能我建议一个名为f ..
发布时间:2018-04-26 12:59:20 其他开发

我是否提交由npm 5创建的package-lock.json文件?

npm 5今天发布,其中一项新功能包括确定性安装创建一个 package-lock.json 文件。 这个文件应该保存在源代码管理中吗? 我假设它类似于 yarn.lock 和 composer.lock ,这两者都应该保存在源代码管理中。 解决方案 是,打算检查 package-lock.json 进入源代码控制。如果你使用的是npm 5,你可以在命令行中看到:创建一个loc ..
发布时间:2018-04-26 12:58:14 其他开发

Gemfile.lock应该包含在.gitignore中吗?

我对捆绑器及其生成的文件有点新鲜。我有一个GitHub的git仓库副本,很多人都在贡献它,所以我很惊讶地发现bundler创建了一个不存在于仓库中并且不在中的文件。 gitignore list。 因为我已经分叉它,我知道将其添加到回购将不会破坏主回购的任何内容,但如果 是否应将 Gemfile.lock 包含在存储库中? 解决方案假设你没有编写rubygem,Gemfile.l ..
发布时间:2018-04-26 12:58:08 其他开发

Git mergetool生成不需要的.orig文件

当我用Kdiff3(以及其他合并工具)尝试合并冲突解决方案时,我注意到在分辨率上创建了一个 *。orig 文件。有没有办法让它不创建额外的文件? 解决方案 git config : git config --global mergetool.keepBackup false 执行合并后,带有冲突标记的原始文件可以保存为具有 .orig 扩展名的文件。 ..
发布时间:2018-04-26 12:57:43 其他开发

两个目录中的相同文件的Git Diff总是导致“重命名”

git diff --no-index --no-prefix --summary -U4000 directory1 directory2 这样可以正常工作,因为它返回所有两个目录之间的文件。添加的文件按预期输出,删除的文件也会导致预期的差异输出。然而,由于diff将文件路径作为文件名的一部分考虑在内,所以在两个不同的目录中具有相同名称的文件会导致diff输出重命名的标志,而不是改变。 ..
发布时间:2018-04-26 12:57:01 其他开发

Git rebase - 在fork-point模式下提交选择

阅读 git rebase 和 git merge-base man documentation: 在使用git checkout -b topic origin / master创建的主题分支上工作之后,远程跟踪分支源/主的历史记录可能已被重绕并重建,导致这 形状的历史: o --- B1 / --- o --- o --- B2 --- o --- o --- o -- ..
发布时间:2018-04-26 12:56:30 其他开发

是否有可能在Git中创建分支?

我正在研究大规模使用git。我希望通过调用主分支中继来提高采用率并使事情更轻松。 这可能会给SVN用户带来一些舒适感。我知道我可以创建一个名为trunk的分支,但似乎偏离了git规范,可能会导致一些用户感到困惑。 我知道我也可以创建和删除标签,但是当我签出这些标签时,它告诉我这是一个非本地分支,这对我来说很好但可能不是我想要做的。 我是git newb,但是在发布和构建系统方面经 ..
发布时间:2018-04-26 12:55:19 其他开发

如何列出包含等效提交的分支

在之前的问题中,有人提供了一个用于查找包含EXACT commit的分支的答案: 如何列出包含给定提交的分支 接受的答案突出显示,这仅适用于EXACT提交ID,而不适用于相同的提交。有人进一步表示,Git Cherry可以用来解决这个问题。 Git樱桃SEEMS适合相反;找到不向上游推送的提交。如果我不知道哪个分支创建了它,以及什么是上游,这是无用的。所以我不明白它将如何帮助解决 ..
发布时间:2018-04-26 12:55:13 其他开发

git:更新被拒绝,因为远程包含你本地没有的工作

我正在与一些开发人员在BitBucket上使用git合作。我们都在开发 dev 分支,而不是推到 master 直到发布。 其中一位开发人员犯下不正确的代码,意外覆盖了我自己的代码,现在我试图将正确的代码推回到回购站。我一直在阅读这个错误几天,因为我收到以下错误,我无法推送到repo: ! [被拒绝] master - > dev(获取第一个) 错误:未能将某些参考文献推送到'htt ..
发布时间:2018-04-26 12:55:05 其他开发

在MySQL数据库上使用版本控制(Git)

我是一名WordPress设计师/开发人员,他越来越多地使用版本控制,特别是Git,尽管我在某些项目中使用SVN。 将所有WordPress文件添加到我的回购站中是没有问题的,如果我想知道我可以.gitignore wp -config文件,但由于我是目前唯一的开发人员,而且这些项目都是封闭源代码,所以它确实没什么意义。 WordPress很大程度上依赖于数据库,像任何CMS一样,保留 ..
发布时间:2018-04-26 12:54:53 数据库

git提交频率

因为我从svn切换到git,我开始在每次重新编译时都做出更多的提交,并且我的测试通过了我的工作。最后,我最终通过函数提交了函数。 我还跟踪一些使用像emacs,wordpress等git的项目。我发现它们并没有经常提交。所以我很想知道你们如何提交?解决方案 Git项目本身的准则(和Linux项目AFAIK)是每个“逻辑上独立的变更集”的一次提交。 这有点含糊不清,但如果你不断地在一个 ..
发布时间:2018-04-26 12:54:16 其他开发

git add *(星号)vs git add。 (期)

我是git的新手,我有一个关于在git中添加文件的问题。我发现了有关 git add。和 git add -a , git add --all , git add -A 等等,但是我一直无法找到解释 git add * 的确如此。我甚至看过 git添加手册页,但它没有帮助。我一直在用它来代替 git add。,我的同事问我为什么。我没有答案。我一直使用 git add * 。 $ b $ git ..
发布时间:2018-04-26 12:53:45 其他开发

git:切换分支而不分离头部

我在github上有一个主分支(主)和一个分支用于一些实验性工作。我做了一些提交并推送到实验分支,一切正常。 现在,在另一台机器上,我尝试克隆我的存储库(git clone repository )然后切换到实验分支(git checkout branchname ),但每次我这样做时,我的头都会分离,我无法推送我的更改。我究竟做错了什么?我感觉我错过了某个地方的基本git概念,但是阅读随机 ..
发布时间:2018-04-26 12:53:23 其他开发

如何在不使用.gitignore的情况下让Git忽略文件?

由于外部奇怪的限制,我无法修改我的存储库的.gitignore。有没有办法忽略修改.gitignore以外的文件和目录?即使它是一个像全局配置一样的全局解决方案,将会应用到我所有的仓库中。 到 gitignore ,在Git考虑的不同“忽略模式来源”中有一个优先顺序: 模式从命令行读取支持它们的命令。 .gitignore文件与路径相同的目录或任何父目录中,高层文件中的模式(直到根目录)被低 ..
发布时间:2018-04-26 12:53:06 其他开发

克隆和原始远程存储库之间的git diff

我克隆了一个github仓库,并且没有在本地进行任何更改。 如何在我的本地存储库和原始github存储库之间找到差异? 如何在我的工作副本和原始github存储库之间找到差异? 如何找到我的本地存储库与另一个github存储库的相同项目? 解决方案 1)添加要比较的任何远程存储库: git remote添加foobar git://github.com/user/foob ..
发布时间:2018-04-26 12:52:56 其他开发

Git非快进拒绝

我觉得这个问题已被多次询问,但解决方案通常是“我删除了该目录,并重新结束了我的工作。”我做了一次提交和推送,但意识到我在提交消息中提到了错误的票号。所以我看了这么快速的解决方案,并在终端中输入以下内容: $ git reset --soft HEAD ^ $ git commit -m“...正确的消息...” 唯一的问题是我得到以下错误消息: 为防止您丢失历史记 ..
发布时间:2018-04-26 12:52:54 其他开发

如何更新分叉回购的请求?

因此,我首先制定了回购协议,然后对该分销回购做出了承诺。然后我打开了一个拉请求。拉取请求列出了我想要的所有更改。 在回顾我的拉取请求之后,回购所有者希望我在接受之前进行了一些更改。我已经在我的fork中做了这些修改,现在我该如何更新这些更改的pull请求(或者这不是我应该如何处理它)? 解决方案 你已经做对了。拉取请求将自动更新。这个过程是: $ b 打开拉取请求 根据您本地回购 ..
发布时间:2018-04-26 12:52:13 其他开发