我对Github很新。
我有一个我正在开发的脚本,其中我对某些变量有不同的值,在某些情况下还有代码变体。
我发现如果我有一个主分支和另一个分支,如果我打开一个cmd窗口,我可以在一个分支中的脚本版本和另一个分支之间来回切换(git checkout master
,git checkout alternatebranch
)。我的资源管理器中的文件是同一个文件,我有一组存储库文件,但根据我在本地的分支,我根据master或alternativebranch中的工作有不同的可见代码,以及我是否有m&m; m '指向'到一个分支或另一个分支。
如果我想同时运行脚本版本(比如在不同的IDE实例中使用Python),我该如何使用github文件来管理它?
我正在开发一个Windows 7环境,该脚本在Python 2.7中,我使用Spyder IDE。
提前致谢。
答案 0 :(得分:0)
简短的回答是Git不会直接帮助您 - 但请参阅下面的git worktree add
。
如果您的程序从工作树中读取和/或写入名为./control.info
的文件,则./control.info
的内容由您的操作系统和程序决定。当你告诉它时,Git只会将内容写入工作树,或者从工作树中读出内容 - 所有 Git的文件都以特殊的压缩格式存储,只读正确的存储库和Git索引中的读/写。
Git使用索引中的任何内容进行新提交。当您在文件上使用git add
时,您告诉Git将文件从工作树(它具有普通文件的正常,未压缩格式)复制到索引中,将其压缩为特殊的仅Git格式。当你使用git commit
时,你告诉Git将索引打包成永久提交,你的名字是作者和提交者,依此类推。
当您运行git checkout <commit>
时,Git会在索引中找出哪些文件必须更改,并在工作树中作为奖励副作用,以便从任何提交切换你现在已经到了给定的<commit>
。 Git会将更新的文件写入其索引(这非常快),同时将工作树(稍微慢一些)写入,现在您可以将文件放在非Git程序可用的表单中。
Git,因为版本2.5 提供了一个新命令git worktree
,它可以向一个(共享)存储库添加额外的工作树。使用此技巧,您可以在分支master
的顶端检出一个工作树,并在另一个位置检查单独的工作树,在分支alternatebranch
的尖端检出:< / p>
git checkout master
git worktree add /C/path/to/different/dir/project alternatebranch
例如。
自git worktree
进入以来,git worktree
已有修复,但最大的修复是Git 2.6,因此2.6或更高版本最适合使用<menu>
。