我想在我的Linux 目录中创建一个git 。在这个回购-显然-我可以添加所有的版本控制,但这是没有任何意义的。我只想添加与我相关的文件和文件夹,如.vimrc、.vim、.bashrc等(可能只是隐藏的文件和文件夹,但可能不是)
我知道我可以利用.gitignore来尝试实现这样的行为,但这将是痛苦的,而且几乎是不可维护的。相反,我想知道的是,是否有任何方法手动声明我想要管理的文件和文件夹,只有这一点。
发布于 2014-01-21 19:15:20
.gitignore
# Ignore everything
*
# But not these files...
!*.vimrc
!*.vim
!*.bashrc
!.gitignore
# etc...我的主目录也在GitHub上。
发布于 2014-12-06 21:50:13
我只为您的home repo设置一个别名,这样您就可以使用别名来代替git命令,并且您始终知道您正在使用的上下文。
# .bashrc
alias home='git --work-tree=$HOME --git-dir=$HOME/.home'公文
$ home init将在.home文件夹中的$HOME中创建一个回购,与当前目录无关,您可以使用别名“home”代替“git”来处理home repo。
这与.gitignore一起应该是您所需要的。
# .gitignore
*
# keep track
!.bashrc
!.gitignore注意:不要将..ssh/key保存在repo中,因为它会出现文件权限和安全问题。
发布于 2016-05-20 04:08:04
我建议不要将您的$HOME目录置于git版本控制之下。我这么做,是因为我认为自己非常聪明,并且希望将我的.dotfiles置于版本控制之下。然而,吉特贪婪而贪婪。我不得不在$HOME/..gitignore中添加大量目录(甚至*)。在您的主目录中其他地方有git存储库吗?我做到了。但是,这些git存储库将使用您的$HOME/. .gitignore作为您的全局.gitignore,除非您将其设置在其他地方。因此,尝试在这些子目录存储库中添加文件是很痛苦的。
相反,将重要的文件放在一个单独的目录中。比如说,~/dotfiles。现在,让它成为一个git存储库,并将所有重要的.dotfiles符号链接到这个新的存储库。瞧。问题解决了,尽管在连接上投入了一些时间。
https://stackoverflow.com/questions/21266948
复制相似问题