相关疑难解决方法(0)

git可以在空格和制表符之间自动切换吗?

我在我的python程序中使用制表符缩进,但我想与使用空格的人合作(使用git).

有没有办法让git在推/取时自动在空格和制表符之间进行转换(例如,4个空格= 1个制表符)?(类似于CR/LF转换)

git tabs indentation

192
推荐指数
3
解决办法
5万
查看次数

我可以在不修改我的工作副本的情况下重新绑定Git分支吗?

假设我检查了我的"主"分支.我已经对"master"进行了一些生产更改,现在我想将我的"实验"分支改为最新的master.但是,我想在不修改工作副本中的任何文件的情况下执行此操作.从本质上讲,我希望所有的魔法都发生在.git目录中,而不需要触及工作副本.

如果不是"不要修改我的工作副本"要求,这只是一个问题:

# current branch is master
git checkout experimental
git rebase master
git checkout master
Run Code Online (Sandbox Code Playgroud)

我真正的问题是,这会修改我的工作副本中的时间戳,即使我通过查看与我开始的完全相同的内容结束.一旦我运行"git checkout experimental",任何包含实验分支中的更改的文件都会将其mtime设置为当前时间 - 因此,自上次重新实验以来,在master中更改的所有文件也是如此.因为mtimes已经改变了,所以像构建工具这样的东西会让人觉得他们需要再做一些工作,即使在我完成时,文件的内容实际上并没有改变.(就我而言,如果项目文件的时间戳发生变化,Visual Studio认为需要花费大量时间来卸载和重新加载项目.)我想避免这种情况.

有没有办法一步完成上述所有操作,而无需修改工作副本中的任何内容 (假设在rebase期间没有冲突)

(如果冲突,我更倾向于将显示该错误,然后中止整个操作,而不用修改任何时间戳但是,这只是我的偏好,而不是硬性要求-我不知道什么是一切皆有可能.)

当然我可以编写一个脚本来捕获mtimes,运行git,然后重置mtimes; 但似乎Git已经有办法在没有打扰工作副本的情况下执行rebase这样的事情,因为rebase实际上是关于增量,而不是文件的实际内容.

git rebase

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

如何以非交互方式运行git rebase --interactive?

可以做以下吗?

  1. git rebase --interactive标准样板输出到文件,而不是输出到文件并在编辑器中打开它.
  2. 让用户编辑文件.
  3. 让用户git rebase使用已编辑文件的名称重新运行.
  4. 继续通常的rebase过程.

用例:当然是脚本式的变基.例如,请参阅如何以非交互方式在Git中重新提交提交.

git scripting git-rebase non-interactive

41
推荐指数
6
解决办法
9717
查看次数

在Git中处理临时更改(不提交)

通常在分支机构工作时,我需要引入一些"临时"更改(例如额外的调试信息,或者让我更好地观察我实际工作的更改).

关于这些"临时"变化:

  • 我希望他们在我的分支机构的工作副本中,因为它们帮助我处理实际的变化,
  • 我不希望他们提交到分支,因为分支将在某个时候合并到master中,而且它们不是生产代码.

目前我只是将它们保持为未分级状态,并在暂存每次提交时手动跳过它们.但是我不能坚持这个解决方案,因为:

  • 我一直记得我需要跳过哪些文件,
  • 有一天,我最终会在一个文件中进行2次更改,一次是临时更改,一次是提交,这将非常麻烦.

我该怎么处理呢?


gitignore 显然是不可能的,因为我不想忽略整个文件,我仍然对其他提交者的更改感兴趣(我需要不时地将分支重新绑定到主人).

git branch git-branch

20
推荐指数
3
解决办法
4661
查看次数

在Git中维护"服务器版本"的唯一方法是什么 - 只更改了配置文件?

我有时使用Codeigniter,在我完成本地站点的开发之后,我需要将文件迁移到服务器./config/需要更改文件夹中的所有文件以匹配服务器设置.对这些更改进行完整的提交是不对的,我只是让Git完全忽略这些文件,还是有办法跟踪这些更改并在适当的时候将它们应用于Git?

php git version-control codeigniter

7
推荐指数
1
解决办法
2084
查看次数

最佳实践 - Git + Build自动化 - 保持配置分离

寻找保持配置文件分离的最佳方法,但没有为新开发人员设置环境引入额外的步骤.

我猜一个子模块就足以完成这项工作,但那么我将如何根据手头的任务无缝切换配置,也就是定期拉入DEV配置,在构建期间拉出配置仓库的PROD分支?

需要是:

  • 对于新开发者而言,轻松无痛.
  • 只有选择用户+构建用户才能访问PROD配置文件.

先感谢您.

git automation build bitbucket gruntjs

6
推荐指数
1
解决办法
1208
查看次数