Questions tagged «git»

Git是一个开源的分布式版本控制系统(DVCS)。使用此标签可解决有关Git使用和工作流程的问题。不要仅仅因为存储库恰好托管在GitHub上而使用[github]标签来解决与Git相关的问题。另外,请勿对碰巧涉及Git储存库的一般编程问题使用此标记。

6
如何从Git的文本窗口退出?
我正在使用Windows,并且在提交之前,Git希望我输入文本消息,然后会出现一个新的文本窗口。 我该如何退出? 我正在尝试学习Git。因此,将为您提供一点帮助。
275 git  vim 


4
将git post-commit钩子应用于所有当前和将来的仓库
我已经编写了一个Git提交后钩子,它可以正常工作。但是,我想添加此钩子以应用于我正在使用的所有当前(和将来)的git存储库。我尝试将钩子添加到~/.git/hooks/项目目录的钩子目录中,而不是添加到我的钩子中,但是,这似乎没有用。 有什么方法可以创建适用于我系统上所有存储库的全局Git挂钩(而不必将它们复制到每个项目目录中)?如果没有,那么最好的解决方案是什么?也许是git-init模板?
275 git  hook  githooks 

6
如何使git分支与master保持同步
在git努力工作的当下,我无法为以下问题提供最佳解决方案。 有两个分支,一个称为master,一个称为mobiledevicesupport。我想将mobiledevicesupport保持为连续分支,只要mobiledevicesupport稳定,它将与master分支合并/同步。这样既可以将移动设备支持中的更改合并到主设备中,也可以将主设备中的所有更改都并入移动设备支持中,以便可以继续处理分支并改进或修改功能。这需要与中央存储库和多个开发人员一起使用。 请举一个其他人使用的类似工作流程的示例,或者只是告诉我这个想法是否愚蠢,我应该考虑其他选择。目前,工作流程听起来不错,但我只是不知道如何使git这样工作。 谢谢,所有帮助,不胜感激。 更新1:如果我要将master合并到mobiledevicesupport中,并且将mobiledevice支持合并到master中,我是否会在两个分支之间获得复制的提交。还是git足够聪明,可以算出我已将最新的更改从分支A拉到分支B并将合并提交C添加到分支B。而且我已将最新的更改从分支B拉到分支A并将合并提交D添加到分支一个? 我打算发布一张图片,但我对此没有足够的声誉,所以我想下面的插图很有用。连续运行的两个分支通常会双向合并。我不确定的关键是git如何播放提交内容,并在合并时用另一个分支的提交内容填充任一分支,还是保持干净。我以前使用过rebase,但似乎结束了分支并将所有提交放入master,否则我做错了。感谢你目前的帮助。 master A--B--C-----H--I--J--M--N \ / \ mobile \ / \ D--E--F--G--------K--L
275 git 

4
吉特搁置vs藏匿
我shelve对Git方面非常陌生。如果stash用来搁置未完成的工作,那是什么shelve什么?你会用它做什么? 例如在更新项目上(从VCS菜单) 一个会得到(在Idea 2019.2中)

24
如何将数据库置于git(版本控制)下?
我正在做一个Web应用程序,我需要对一些主要更改进行分支,事实是,这些更改需要更改数据库架构,因此我也希望将整个数据库也置于git下。 我怎么做?我可以在git资料库中保留一个特定的文件夹吗?我怎么知道哪一个?如何确定要放入正确的文件夹? 我需要确定,因为这些更改不是向后兼容的。我无力承担。 我的数据库是PostgreSQL 编辑: 有人建议进行备份,并将备份文件而不是数据库置于版本控制之下。老实说,我很难吞咽。 一定有更好的方法。 更新: 好的,因此没有更好的方法,但是我仍然不太确定,因此我将稍微改变一下问题: 我想将整个数据库置于版本控制下,我可以使用哪个数据库引擎,以便可以将实际数据库置于版本控制下而不是其转储? sqlite是git友好的吗? 由于这只是开发环境,因此我可以选择所需的任何数据库。 编辑2: 我真正想要的不是跟踪我的开发历史,而是能够从我的“新的根本性变化”分支切换到“当前稳定的分支”,并能够例如使用当前版本修复一些错误/问题等。稳定分支。这样,当我切换分支时,数据库会自动与我当前所在的分支兼容。我不太在乎实际数据。

3
Git结帐双破折号的含义
此git命令中文件名前面的双破折号是什么意思? git checkout --ours -- path/to/file.txt git checkout --theirs -- path/to/file.txt 他们是强制性的吗?等于 git checkout --ours path/to/file.txt git checkout --theirs path/to/file.txt
274 git  git-checkout 

20
git reset --hard留下的未分级更改
之后git reset --hard,git status在Changes not staged for commit:部分中给我文件。 我也试过git reset .,git checkout -- .而且git checkout-index -f -a,也没有用。 那么,我该如何摆脱那些未进行的变更呢? 这似乎只命中Visual Studio项目文件。奇怪的。看到此粘贴:http : //pastebin.com/eFZwPn9Z。这些文件的特殊之处在于,我在.gitattributes中具有: *.sln eol=crlf *.vcproj eol=crlf *.vcxproj* eol=crlf 另外,autocrlf在我的global中设置为false .gitconfig。可能以某种方式相关吗?
274 git  git-reset 

11
Gitignore不起作用
我的.gitignore文件由于某种原因无法正常工作,并且没有大量的Google谷歌搜索程序能够修复该文件。这是我所拥有的: *.apk *.ap_ *.dex *.class **/bin/ **/gen/ .gradle/ build/ local.properties **/proguard/ *.log 它在目录中master,这是我的git repo。我正在运行Git 1.8.4.2,因为我在运行OSX 10.8.6的MacBook上。
274 git  gitignore 



6
在Github项目中搜索代码
有没有办法在Github项目的代码中进行grep的处理? 我可以提取源代码并在本地grep,但是我想知道是否可以通过Web界面或第三方替代方案。 有想法吗?
272 git  search  github 

14
由于我已经删除了大文件而无法将其推送到GitHub
目前我有 空GitHub回购 SSH服务器存储库(主) 本地回购 SSH服务器存储库是最新的存储库(生产站点),因此我从那里到本地进行了Git克隆。然后,我尝试git push对GitHub 做一个。 一切正常,但随后又说明了filename.gz对于GitHub而言太大。我不需要此文件,所以我运行了几个Git命令从Git缓存中删除它,然后将其推回SSH服务器。 我没有在本地看到大文件,但是即使git diff什么也没有返回,并且git push返回“一切都是最新的”,它仍然在SSH服务器上-并且即使在我尝试推送到本地文件时,该文件在本地仓库中也不可见GitHub我仍然对此有错误 远程:错误:文件fpss.tar.gz为135.17 MB; 这超出了GitHub的文件大小限制100 MB 我按照GitHub帮助中列出的 “解决问题”下的步骤进行操作,所以这还不够吗? 当文件不在本地或不在git status / diff / push中列出时,文件仍如何在ether中?
272 git  github  git-push 

29
致命:早期EOF致命:索引包失败
我已经用Google搜索了,发现了很多解决方案,但是没有一个适合我。 我正在尝试通过连接到LAN网络中的远程服务器从一台计算机克隆。 从另一台计算机运行此命令会导致错误。 但是在服务器上使用git://192.168.8.5 ...运行SAME clone命令可以并成功。 有任何想法吗 ? user@USER ~ $ git clone -v git://192.168.8.5/butterfly025.git Cloning into 'butterfly025'... remote: Counting objects: 4846, done. remote: Compressing objects: 100% (3256/3256), done. fatal: read error: Invalid argument, 255.05 MiB | 1.35 MiB/s fatal: early EOF fatal: index-pack failed 我已经添加了此配置,.gitconfig但也没有帮助。 使用git版本1.8.5.2.msysgit.0 [core] compression = …
271 git  cygwin  msysgit 

8
试图用git filter-branch修复行尾,但是没有运气
我一直被git的Windows / Linux行尾问题所困扰。似乎通过GitHub,MSysGit和其他来源,最好的解决方案是将本地存储库设置为使用linux样式的行尾,但设置core.autocrlf为true。不幸的是,我还没有做得足够早,所以现在每次我进行更改时,行尾都令人讨厌。 我以为我在这里找到了答案,但我无法为我工作。我的Linux命令行知识充其量是有限的,因此我什至不确定“ xargs fromdos”行在其脚本中的作用。我不断收到有关不存在此类文件或目录的消息,当我设法将其指向现有目录时,它告诉我我没有权限。 我已经在Windows上通过Mac OS X终端在MSysGit上进行了尝试。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.