我已经开始玩Git并遇到过"上游"和"下游"这两个词.我之前见过这些,但从未完全理解它们.这些术语在SCM(软件配置管理工具)和源代码的上下文中意味着什么?
.gitignore将Git与Xcode结合使用时,我应该包含哪些文件?
好的,在看到PJ Hyett的这篇文章之后,我决定跳到最后并与Git一起去.
所以我需要的是初学者对Git 的实用指南."初学者"被定义为知道如何处理编译器的人,在某种程度上理解Makefile是什么,并触及源代码控制而不理解它.
"实用"被定义为这个人不想详细了解Git在后台做什么,甚至不关心(或知道)它是分布式的.您的回答可能暗示了可能性,但尝试瞄准想要在备份和安全的"服务器"上保留"主"存储库的初学者,并将其本地存储库视为仅仅是"客户端"资源.
所以:
Visual Studio解决方案包含两种类型的隐藏用户文件.一个是解决方案.suo文件,它是一个二进制文件.另一个是项目.user文件,它是一个文本文件.这些文件包含的确切数据是什么?
我也一直想知道是否应该将这些文件添加到源代码控制中(在我的情况下是Subversion).如果我不添加这些文件而另一个开发人员检出解决方案,Visual Studio会自动创建新的用户文件吗?
撤消特定提交的最简单方法是:
因为如果它不是最新的提交,
git reset HEAD
Run Code Online (Sandbox Code Playgroud)
不起作用.而且因为它被推到了遥远的地方,
git rebase -i
Run Code Online (Sandbox Code Playgroud)
和
git rebase --onto
Run Code Online (Sandbox Code Playgroud)
将导致遥控器出现一些问题.
更重要的是,我不想真正修改历史.如果有错误的代码,它就在历史中可以看到.我只想在工作副本中使用它,我不介意反向合并提交.
换句话说,以下svn命令的Git等价物是什么:
svn merge -r 303:295 http://svn.example.com/repos/calc/trunk
Run Code Online (Sandbox Code Playgroud)
通过反向合并这些修订中的所有更改,将所有更改从295移除到302,作为新提交.
svn merge -c -302 ^/trunk
Run Code Online (Sandbox Code Playgroud)
当然,通过添加另一个反向合并来自相应提交的更改的提交来撤消302提交.
我认为它应该是一个相当简单的Git操作和一个相当常见的用例.原子提交还有什么意义?
我们已经举办藏起来,并要保证的提交是完全原子,你不应该能够很容易地撤销这些原子提交的一个或多个?
我一直在Windows上使用git一段时间(使用msysGit),我喜欢分布式源代码控制的想法.就在最近,我一直在关注Mercurial(hg),它看起来很有趣.但是,我无法解决hg和git之间的差异.
有没有人在git和hg之间进行并列比较?我很想知道hg和git的不同之处,而不必参加讨论.
我希望拆分提交,不知道要使用哪个重置选项.
我在看页面你能解释一下"git reset"用简单的英语做什么吗?,但我意识到我并不真正理解git索引或临时区域是什么,因此解释没有帮助.
此答案中的用例--mixed和--soft看起来一样(当你想要修复和重新发送时.)有人可以将其分解吗?我意识到--mixed可能是选择,但我想知道为什么.最后,怎么样--hard?
有人能给我一个如何选择3个选项的工作流程示例吗?
偶尔我会把一个DVD-rip放到一个网站项目中,然后不小心git commit -a -m ...,然后,zap,回购邮件被2.2演出臃肿.下次我做了一些编辑,删除了视频文件,并提交了所有内容,但是历史记录中的压缩文件仍然存储在存储库中.
我知道我可以从那些提交开始分支并将一个分支重新绑定到另一个分支.但是我应该怎么做才能将2个提交合并在一起,以便大文件没有在历史记录中显示并在垃圾收集过程中被清除?
在我的存储库中,我有一个aq我正在研究的分支.
然后,我承诺了新的工作和错误master.
将这些提交纳入aq分支的最佳方法是什么?创建另一个新分支master并将其合并aq?
version-control ×10
git ×8
comparison ×1
definition ×1
directory ×1
dvcs ×1
git-merge ×1
git-rebase ×1
git-reset ×1
git-revert ×1
gitignore ×1
macos ×1
mercurial ×1
svn ×1
terminology ×1
versioning ×1
xcode ×1