标签: git

在 Git 中获取提交大小?

有没有办法找出每次提交使用了多少空间?如果我在每次提交后推送,我会看到发送了多少数据。这是估计它的一种方法。但必须有更好的方法。

接受的解决方案给了我以下输出:

$ ./git-commit-sizes 
1494 40eb8832156be81711f3816f04031cf3b8ef16b0 2
0 fbfb9f4c1f7ae403b9d8b4e194e384c6c41283ad 2
1961638 35e59833bad00edff2c5e8600eb4e62251606556 23
0 49cffee125318113d5dbe6f81e4ce12dcc07263d 2
Run Code Online (Sandbox Code Playgroud)

每行代表一次提交,提供三个信息:

使用的字节数、sha1 名称、文件已更改

command-line git

9
推荐指数
1
解决办法
8333
查看次数

Ubuntu 16.04 LTS 上的 RabbitVCS

最近我安装了 Ubuntu 16.04,我想在我的系统上安装 RabbitVCS。

我已经添加了 PPA 和 apt 更新,似乎还没有为 xenial 构建

  1. http://ppa.launchpad.net/rabbitvcs/ppa/ubuntu/dists/xenial/main/binary-amd64/Packages
  2. http://ppa.launchpad.net/rabbitvcs/ppa/ubuntu/dists/xenial/main/binary-i386/Packages

如何联系维护者?有人有可用的 deb 文件吗?

package-management ppa git rabbitvcs 16.04

9
推荐指数
1
解决办法
2万
查看次数

在 WSL(适用于 Linux 的 Windows 子系统)上运行 gnome-keyring

我一直在尝试使用本文中的步骤使用密钥环(Gnome 密钥环)存储 HTTPS GIT 凭据:

http://blog.iqandreas.com/git/storing-https-authentication-in-ubuntu-and-arch-linux/

我采取了以下步骤:

sudp apt-get install make
sudo apt-get install-gnome-keyring-dev
sudo make --directory=/usr/share/doc/git/contrib/credential/gnome-keyring
git config --global credential.helper /usr/share/doc/git/contrib/credential/gnome-keyring/git-credential-gnome-keyring
Run Code Online (Sandbox Code Playgroud)

现在,当我使用任何远程 git 命令时,出现错误:

** (process:19273): CRITICAL **: Error communicating with gnome-keyring-daemon
Run Code Online (Sandbox Code Playgroud)

是不可能在 WSL 上运行守护进程,还是我错过了一些简单的东西?抱歉,如果这是不同类型的问题,我是 Ubuntu 新手。

另一方面,为标签“ubuntu-on-windows”创建同义词“WSL”是个好主意吗?

我认为这可能成为 ubuntu-on-windows 最合乎逻辑的首字母缩写词:https : //blogs.msdn.microsoft.com/wsl/

更新:

我已经尝试过@LordMord 所说的:

在 ~/.bashrc 末尾添加

ssh-add -l &>/dev/null
if [ "$?" == 2 ]; then
  test -r ~/.gnome-keyring && \
    source ~/.gnome-keyring && \
    export DBUS_SESSION_BUS_ADDRESS GNOME_KEYRING_CONTROL SSH_AUTH_SOCK GPG_AGENT_INFO GNOME_KEYRING_PID

  ssh-add -l &>/dev/null
  if …
Run Code Online (Sandbox Code Playgroud)

git gnome-keyring windows-subsystem-for-linux

9
推荐指数
2
解决办法
4674
查看次数

在 Ubuntu One 上存储 git repo 有意义吗?

我正在做一个小项目,主要是在家里,但我希望能够从多台机器访问我的 git 存储库,所有这些机器都连接到 Ubuntu One。

你认为我可以安全地将我的 repo 存储在 U1 中并在那里工作,还是会让我陷入困境?

10.10 ubuntu-one git

8
推荐指数
1
解决办法
1901
查看次数

Ubuntu 12.04 Gitosis 不再可用

我有一个使用 gitosis 运行 git 服务器的 Ubuntu 11.10 机器,如此处所述安装https://help.ubuntu.com/community/Git

我只是尝试升级到 12.04 做一个do-release-upgrade,并且 gitosis 包被删除并且在apt-get. 这是我第一次遇到这种情况,所以我不确定如何继续。

幸运的是,这个盒子是虚拟的,我恢复了备份,所以没有造成任何伤害。但是,我仍然想升级并保持安装 gitosis。推荐的方法是什么?

git gitosis 12.04

8
推荐指数
1
解决办法
1万
查看次数

在 Linux/Windows 双引导之间在 NTFS 分区上共享 git repo

我已经在 stackoverflow 上发布了这个问题,但没有答案:点击

因为我在 Ubuntu 上遇到了这个问题,所以我在这里重新发布了我的问题。我希望这不会被禁止。

我正在开发一个 (Qt) 应用程序,它应该在 Windows 和 Linux 下运行。所以,我也希望能够在 Windows 和 Linux 下进行开发。

因此,我将我的项目(作为 git repo)存储在我在 Linux(Ubuntu 13.10)下安装的 NTFS 分区上。为了避免编译后的可执行文件的权限问题,我将影子构建目录设置为 Linux 下的主文件夹。

到目前为止,这种方法工作得很好。但是有一些影响让我担心:如果我暂存一些更改的文件(使用 smartgit),smartgit 不会反映我已经暂存了它们。它们仍显示为未暂存。

提交时类似的事情:提交后,提交的更改仍然显示,就好像它们没有提交一样。但是在日志中我可以看到它们已提交。关闭重新打开回购“解决”了这个问题,或者至少是一种解决方法。

但是我担心我在 Linux 下的 NTFS 分区上使用它破坏了我的存储库。或者我的仓库有一天会以这种方式被破坏吗?

dual-boot windows git ntfs

8
推荐指数
1
解决办法
3743
查看次数

从源存储库或 PPA 升级到最新版本的 Git

我想使用Ubuntu 中的源存储库升级 git 。如您所见,最后一个稳定版本是 2.0.2,但我有 1.9.4。

我克隆了 git 存储库,但我不确定如何继续。

我想以某种方式做到这一点,我可以理解如何与存储库的分支和标签进行交互,所以我不是在搜索这种类型的解决方案。

upgrade git

8
推荐指数
1
解决办法
2576
查看次数

如何使用 git 从 github 检索单个文件

我想了解有关此代码的更多信息,但无法将其导入我的计算机。我怎么能用 git 克隆这个文件?该文件很简单:

https://github.com/tensorflow/tensorflow/blob/r1.1/tensorflow/examples/tutorials/mnist/mnist_softmax.py. 
Run Code Online (Sandbox Code Playgroud)

谢谢!

git clone

8
推荐指数
2
解决办法
7万
查看次数

“less”如何切换到文本,然后回到提示?

当我运行less某个文件时,提示消失,我在屏幕上看到文件的内容。然后当我按下 时q,它会返回到提示。我认为less通过保存当前终端缓冲区,打开一个新缓冲区,将文件输出到新缓冲区,然后关闭时,丢弃新缓冲区并恢复旧缓冲区来做到这一点,但我不知道这个过程被称为什么或它是如何做到的。

我看了看,man less但没有找到任何东西。我尝试使用谷歌搜索它,但找不到任何有用的东西,除了该screen命令可以对 shell 会话执行相同的操作。

最终,我问是因为我想git diff使用新的缓冲区而不是内联打印。我已经设置了GIT_PAGER=lessand git --paginate diff,但他们没有改变任何东西。我有一个解决方法,但它有点长:git diff --color=always | less -R

更新:经过一番研究,它看起来像tput smcuptput rmcup高层次的命令做同样的事情,可能使用的termcap包。

command-line git less

8
推荐指数
1
解决办法
436
查看次数

禁用模态对话框以插入密码

我升级到 Ubuntu 18.04,当我提交时发现一个非常烦人的“功能”,git而 16.04 中没有 Unity。我已gpgsign启用,每次我在 git 中提交时,它都会打开一个模式对话框,我必须在其中插入 GPG 密码。

作为重视我的安全的人,我将所有密码保存在 KeePass 数据库中,当这个无用的模态对话框出现时,该数据库很方便地无法使用

询问密码时如何阻止 Gnome 创建模态对话框?

当已经显示要求密码的对话框时,我希望能够从 KeePass 复制并粘贴我的密码,甚至更好的是能够在我的 KeePass 数据库中搜索正确的条目(即我也应该能够在 KeePass 中输入)。

必须取消任何操作,然后复制密码并在密码从剪贴板中清除之前有 10 秒钟的时间重复它,这真是浪费时间。特别是当我尝试从 IDE 提交时,因为在选择文件时它不会暂存它们,这意味着如果我忘记在单击提交之前复制密码,我必须重新选择要提交的所有文件/部分文件。


BTW:我希望使用GNOME的钥匙圈。我希望能够使用 KeePass。有没有办法在 Gnome 中执行此操作,还是必须卸载ubuntu-desktop并安装kubuntu-desktop

gnome password git gnome-keyring gnupg

8
推荐指数
2
解决办法
326
查看次数