Articles of git

有没有办法在Linux上挂载git分支(只读)?

设置:在工作中,我们有一个git回购在我们的脚本。 这些脚本需要在我们所有的客户端Linux机器(〜400)上都可以访问。 目前的解决scheme是有一个文件服务器,它经常拉主分支。 然后挂载(nfs + autofs)。 问:有没有简单的方法来挂载远程git分支只读? 我知道GitFS,但这似乎是矫枉过正。 我正在寻找轻量级的东西,最好在内存中,即不检查磁盘上的东西。 我只需要访问一个分支,没有历史。 编辑:为了澄清这一点:我想避免拉和cronjobs和这样的东西。 最好的东西是透明地挂载一个远程git仓库,就像一个只读nfs挂载。

生成要在不同计算机上使用的SSH密钥

我有几乎每天使用2个系统。 一个是位于办公室内的桌面,另一个是笔记本电脑。 两者都运行Ubuntu LTS linux。 我知道在一个系统上生成的SSH密钥可以复制到另一个系统,并且不会像推/提交一样破坏任何东西。 但我不想这样做。 我需要跟踪从哪个系统推送/提交代码 。 为了实现这一点,我添加了2个差异。 邮件到我的GitHub帐户。 john+desktop@gmail.com john+laptop@gmail.com 现在我需要生成差异。 桌面和笔记本电脑上的SSH密钥,但我不知道该怎么做。 我的一个朋友build议我阅读这篇文章。 第2步显示以下代码 ssh-keygen -t rsa -b 4096 -C "your_email@example.com" # Creates a new ssh key, using the provided email as a label Generating public/private rsa key pair. 上面的命令提供了通过电子邮件地址,但它提到了电子邮件地址作为label 。 我不明白命令的label部分。 下面的命令应该解决我的查询? ssh-keygen -t rsa -b 4096 -C "john+desktop@gmail.com" ssh-keygen -t […]

在密钥环中Git GPG密码

我使用GnuPG签名的git。 每次我想签署一个提交,我必须提供我的GnuPG密钥。 是否有可能让git利用一些系统级的keyring,比如gnome-keyring ? 我似乎无法find任何文件,甚至在networking上的任何线程。 也许有一些解决scheme我不知道,这是不够stream行,很容易谷歌。 可能有一些graphics用户界面工具可以做到这一点,但我对这些并不感兴趣,我主要是从控制台使用git,有时是从基于IntelliJ的IDE中调用系统git二进制文件。 有一个系统端的解决scheme将允许我使用这些IDE(和CLI)的git config –global commit.gpgsign true 。

远程git回购不能在合并挂钩后自动签出

我有一个远程非裸Git回购,这是我的静态博客网站。 我每次在本地master分支中推送一个提交到远程master分支,并有一个post-update钩子,如下所示: echo "hook…" git merge master echo "after hook…" 在远程回购,有一个默认检出的pages分支,我想要的是pages分支不断更新master分支和自动签出到工作区。 但是,工作区不能自动结帐,但是这两个分支已经更新了。 总之,我想要的是工作区可以在pages分支每次合并后更新。 这样我的网站也可以更新。 ==========detail process=========== ==local repo: *master ==remote repo: *pages master git push local-master —> remote-master [OK] 触发钩做: git merge master pages到分支(已签出)[确定] 工作空间已更新(这是我想要的)[NOT-OK]

Git推送到远程“没有这样的文件或目录”

我正试图将更改从本地计算机推送到实时服务器。 我遵循这个页面上的步骤。 在我的本地机器上 ,这是我运行时得到的: $ git push web Counting objects: 3, done. Delta compression using up to 8 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 291 bytes | 0 bytes/s, done. Total 3 (delta 2), reused 0 (delta 0) remote: /bin/bash: GIT_WORK_TREE=/var/www/html git checkout -f: No such file or directory To ssh://MyDomainRemoved.com/var/git/myproject.git […]

如何设置git和maven一起工作?

我对这两种工具都是新手,对于Linux系统pipe理我也是一个新手,所以我提前道歉,看起来像是一个总的问题。 基本上,我从头开始一个全新的项目。 Yaaay! 精彩! 但是,如何build立这个项目我有点遗憾。 我已经在我的开发机器上安装了git和maven,并运行一些教程。 我也在我的服务器上设置了git,并成功地将代码推送到它并从中取出代码。 所以,第一个问题:使用git和maven是一个好主意吗? Git似乎是最好的源代码控制系统,而Maven看起来是最好的构build系统。 他们知道一起工作好吗? 还是在项目的这个早期阶段(不稳定)为我自己制造麻烦? 我已经使用了足够的ant知道我不想使用它,我不是svn的粉丝,尽pipe如果我必须使用它。 第二个问题:鉴于这两种工具可以很好地协同工作,最佳实践方法是什么? 我知道git是“点对点”的,尽pipe我认为没有任何东西可以阻止你为git用户设置一个单独的存储库,并且让所有的开发者在做构build的时候与这个repo同步。 这是正确的路吗? Maven怎么样? Maven似乎有点单用户导向。 就像,每个人都在自己的机器上设置Maven,并拥有自己的Maven回购,对不对? 还是错? 在我的服务器上创build一个“Maven用户”是否有意义,并让该用户从“main”git repo中完成所有的构build? 道歉,如果我完全错误的如何使用这些工具。 正如我所说,我对这些东西很新。 你有任何帮助,是赞赏。 (另外,我正在使用Linux,在Eclipse中执行Java开发工作,使用Spring作为框架,使用mysql作为数据存储,使用Hibernate作为ORM,不知道任何重要的事情) 谢谢!

安全的,私人的,地方性的

我想有一个当地的Gitorious安装,不能在我的本地networking之外访问,并尽可能安全和私密。 回购将保存我需要保密的代码,以防止黑客或盗窃。 我不是Linux的专家,当然也不是git / gitorious的专家,所以下面介绍的改进我的安装的技巧将是最有帮助的! 我有: 在运行Ubuntu Server 11.04 64位本地机器上安装了Gitorious,encryption的LVM。 如果有人好奇,可以使用Gitorious安装指南 。 修改Gitorious以支持本地IP作为主机名。 在gitorious.yml中: 主机字段是本地IP(例如192.168.xxx.xxx) public_mode:false only_site_admins_can_create_profiles:true hide_http_clone_urls:true git-daemon被安装,但现在被删除。 没有端口通过互联网面对路由器转发到机器。 基于git://的和基于http://的请求通常会允许开放的repos复制。 删除git-daemon并将hi​​de_http_clone_urls设置为false似乎已经禁用了这两个。 当我尝试克隆时,它们现在都会传递错误。 使用encryption的LVM,机器在物理盗窃的情况下是安全的。 而且,其他机器上的所有克隆仓库也保存在encryption的驱动器上。 我在encryption的LVM上使用了一个自定义的脚本,以便在失败的尝试次数过多的情况下使用色情内容填充硬盘。 我目前的担忧: 回购通过git://和http://完全禁用访问? 所有的回购访问的途径现在是安全的吗? 有没有办法阻止所有来自本地networking的机器请求,以防我的路由器生气并寻求报复? 还有什么我可以做的encryption或保护回购,以防出现问题? 我如何备份gitorious的数据? 只需备份MySQL数据库和仓库目录? 谢谢。

有没有办法在Linuxterminal上开发一个Rational Team Concert(RTC)项目?

我是一个新雇员,我更喜欢在UNIX环境下工作,但是我所在的项目是在IBM WebSphere环境中开发的 – IBM WID连接到RTC repo。 任何方式,我可以从UNIX开发?

我可以在共享主机服务器上安装git吗?

我以前的问题使我想到了这一点 – 是否有可能在共享主机服务器上安装和使用git(如果它没有默认提供)在哪里使用apt-get是不可能的? 我已经发送了关于这个问题的一张票(apt-get不工作),并得到了这个答复; 这是一个共享的托pipe帐户,您的用户无法修改或安装/卸载服务器上的新软件。 此function仅适用于我们的VPS托pipe解决scheme。 欲了解更多信息,请参阅以下链接: http : //landahost.runhosting.de/vps-hosting.html 因为我只需要git,有没有办法“围绕”这个问题呢?

哪里存储公钥在Ubuntu的SSH?

我有一个git控制版本下的nodejs应用程序和一个pipe理这个git帐户? sudo adduser \ –system \ –shell /bin/bash \ –gecos 'User managing of git version control' \ –group \ –disabled-password \ –home /home/git \ git 我应该在哪里存储authorized_keys文件 /home/git/authorized_keys 要么 /home/user/authorized_keys 用户是我的服务器上的普通用户