相关疑难解决方法(0)

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

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

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

git tabs indentation

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

Git相当于subversion的$ URL $关键字扩展

我正在考虑从subversion迁移到git.我们使用subversion为我们的系统管理员管理诸如配置文件之类的东西之一.为此,我们将$URL$每个文件放入,该文件扩展到subversion树中文件的位置.这使管理员可以查看某个任意主机上的文件,并找出它来自树的位置.

我能找到的最接近的模拟是gitattributes.有filter=指令,但似乎git没有向过滤器传达它过滤的文件名,这是转换$URL$成路径所必需的.

还有ident指令,它将变成$Id$blob哈希.如果可以将其映射回路径名,这可能是有用的,但我的git-fu不够强大.

有什么建议?

工作流程如下:

  1. 管理员提交对VCS存储库的更改
  2. 管理员更新已签出仓库的中央位置
  3. 管理员使用cfengine将更改提取到主机

git keyword

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

用于多个类似(但不完全相同)部署的版本控制工作流程

我目前在一家小型非技术组织工作,并被赋予了编写组织网站的角色.虽然我很享受这项任务并且在网络开发方面学到了很多东西,但我遇到了一些问题,我希望有人可以帮助我,或者至少指出我正确的方向.

一点背景:

我工作的网站有子域,每个子域都有自己独立的WordPress安装 - 因为这是负责更新内容(等)的用户类型最简单的"后端"管理面板.

在组织内部,我在营销经理(MM)下工作,并根据他的风格指南和线框进行编码.

虽然我们从年初开始只使用一个子域,但项目相对简单明了.但是,最近工作流程变得有点复杂,因为我们的原始子域已被复制到其他子域.每个新子域都会对其样式表进行少量编辑(例如,背景的不同图片,此处和那里的颜色略有不同等).

问题:

目前管理所有不同的子域名一直是"可以忍受的",但是现在正在制造骆驼的吸管是MM现在已经看到最终产品所需要的轻微转变.我对样式表的逆转问题是,首席执行官将在一周内说他喜欢改变"X",然后作为MM和我继续修改网站(到现在的"Z"),将在另一周说明他希望我们将"X"更改为"W",但保留"Y"中的大部分更改.

我正在寻找的东西允许:

  • 跟踪文件更改
  • 恢复所做的更改(或从'e'恢复为'a',但包括更改'b'和'c')
  • 轻松上传必要的文件到他们各自的WP主题安装

那里有什么能解决这些问题吗?如果是这样,什么?

谢谢你的帮助!

PS - 我现在正在学习Git,它似乎很好地完成了"跟踪文件更改".但是,还没有了解到还原变化.也许对于我的最后一点,我正在考虑创建一个shell脚本来自动将文件上传到他们的文件夹.Git也这样做吗?


附录(alexbbrown)

我遇到了类似的问题:我运行了一个自定义版本的mediawiki,我在版本化的核心中安装了各种扩展(使用svn).每个扩展都需要confit文件中的一个部分,但confit文件还需要为每个部署进行本地配置.我本可以使用包含它来实现它,但它们不会被版本化; 每次重新分支是一件苦差事.+ g经验值得到一个很好的答案.

git deployment version-control stylesheet reversion

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

防止将 master 中的文件与 Git 合并

另一个问题中,建议使用.gitattributes以保持文件被跟踪但不合并到不同的分支,但我下面的用例似乎不起作用..

mkdir git
cd git
git init
echo "B" > b.txt
git add b.txt 
git commit -m 'Initial commit'

echo "b.txt merge=keepMine" > .gitattributes
git add .gitattributes 
git config merge.keepMine.name "always keep mine during merge"
git config merge.keepMine.driver "keepMine.sh %O %A %B"
git commit -m 'Ignore b.txt'

git checkout -b test # Create a branch
git checkout master # Back to master and make change
echo "Only in master" > b.txt
git commit -a -m 'In …
Run Code Online (Sandbox Code Playgroud)

git merge branch branching-and-merging git-branch

5
推荐指数
1
解决办法
3238
查看次数