Joe*_*Joe 11 git django amazon-s3 django-storage git-branch
问题:有时,但不是每次,Git都会删除static
回购目录.我们不确定是什么触发它,但它似乎发生在分支之间合并或有时甚至只是检查分支.它没有询问就这样做,并且吃掉跟踪的文件.
的背景:
static
目录的Django项目.我们可能在过去的某个时刻git rm
编辑了static
目录,或者将其放入.gitignore
,但不是最近.而我们的开发分支的负责人并没有static
在.gitignore
和具有文件static
跟踪.develop
.但是分支总是从分支develop
到分支develop
.但我们不确定.我们正在使用git-flow,但是在使用非git-flow命令时也会出现问题.
作为何时可以攻击的例子:
1)史蒂夫有一个干净的开发分支(没有改变提交或阶段)和稳定.他git flow release start|finish
在流程中切换了一个新版本(可能是从master到back的合并),整个/ static/tree被删除了.
2)Steve通过丢弃更改来修复删除(基本上取消删除文件).然后,史蒂夫只是从主人回到开发,而/ static/dir再次被摧毁(这与Git Tower有关)
3)有时只是从功能分支合并到开发作为临时合并可以触发它.但是,在切割新版本时,它似乎确实发生了
它可能与我们如何修复/ static/dir的切换有关吗?批量取消删除已删除的内容的最佳方法是什么?抛弃局部变化或硬重置HEAD似乎都无法治愈.一个rebase可能帮助我们?
更新我们刚刚再次体验过这一点git add .
- 没有变化的分支,没有合并.这有助于诊断吗?
以下是Steve的.git/config的内容:
[core]
repositoryformatversion = 0
filemode = true
bare = false
logallrefupdates = true
ignorecase = true
[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = git@github.com:foobarbazbam/bar.git
[branch "master"]
remote = origin
merge = refs/heads/master
[gitflow "branch"]
master = master
develop = develop
[gitflow "prefix"]
feature = feature/
release = release/
hotfix = hotfix/
support = support/
versiontag =
[difftool "tower"]
cmd = \"/Applications/Tower.app/Contents/Resources/CompareScripts/kaleidoscope.sh\" \"$LOCAL\" \"$REMOTE\"
Run Code Online (Sandbox Code Playgroud)
以下是内容.gitignore
:
.DS_Store
*.pyc
*.log
*.log.*
*.bak
*~
settings_local.py
/build/
/static_collected/*
/static/uploads/*
/static/theme_files/*
/static/picture/*
pip-log.txt
*.tmproj
*.dot
*.db
*.sublime-project
*.sublime-workspace
/docs/_*
Run Code Online (Sandbox Code Playgroud)
好的女士们和男士们,我要公开道歉.Git不应该受到指责.我将把这个问题留给其他可能以同样方式通过的人.
我们使用django-storages后端('插件'使Django能够透明地在Amazon S3上存储文件).这有一个叫做的测试HashPathStorageTest
.撕下这个测试删除settings.MEDIA_ROOT
,设置为./static
.在我看来,这是错误的.它没有商业覆盖删除它没有创建的文件.
在签入之前,我们正在像好公民一样运行我们的测试.大部分时间我们只运行代码测试,但偶尔我们会对整个项目(包括第三方插件)进行测试.这就产生了问题中的行为.因为我们一起运行测试和git,所以很难确定哪个命令正在执行删除(并且删除的文件仅在我们运行时显示git status
).
所以问题解决了.再次,抱歉对Git这个好名字进行诽谤!
归档时间: |
|
查看次数: |
382 次 |
最近记录: |