有没有办法在 git 中共享存储?
我在多台机器上工作,并且经常希望能够将我当前的工作状态从一个转移到另一个。
我正在寻找一种方法,可以将存储从一个克隆推/拉到另一个克隆,并使其显示为另一个克隆的存储,或作为明显的远程分支。如果遥控器已经有自己的藏匿处,我不希望前者一定会起作用。
鉴于存储实际上已经是一个带有提交的分支(显然),我不是在寻找“将每个存储提交到一个分支然后共享它们”的解决方案 - 我已经有很多,许多, 分支. 因此,我正在寻找可用于控制推/拉的refspec或类似参数。
我安装了 Gitkraken,因为我有几个项目想用我的 KDE Neon 盒子处理。现在我很确定我安装了所有东西,但是我在终端中运行了 gitkraken 并且我得到了这个
Node started time: 1500754704472
libgnome-keyring.so.0: cannot open shared object file: No such file or
directory
Error: libgnome-keyring.so.0: cannot open shared object file: No such
file or directory
Run Code Online (Sandbox Code Playgroud)
(如有必要,我会发布其余部分)
问题是我安装了钥匙圈
lotus@Lotus-HackBook:~$ gnome-keyring
usage: gnome-keyring command [options]
commands: certificate-exception
import
version
Run Code Online (Sandbox Code Playgroud)
我不知道是怎么回事。
我有一个文件夹,其中包含为项目设置的所有文件。我决定在那个文件夹上使用 git,所以我在 Github 上创建了一个空的 repo。通常的过程是在我的本地磁盘上克隆远程仓库,在这种情况下,它将创建一个空文件夹。但是,我想要做的是在不损坏和不移动它的情况下用我的项目文件夹填充远程仓库。有没有程序可以做到这一点?
请原谅我的无知,但我对编码一无所知。但是,有很多次我在 GitHub 上看到了非常有趣的程序。问题是我不知道如何使用它们。没有安装文件,我不知道我在做什么。
比如我想使用这里开发的程序:https : //github.com/tonton-pixel/unicopedia-plus。但是当我下载文件时,我不明白如何安装它或让它在我的电脑上运行。
请给出有关如何使用此类程序的非常基本的步骤。
我需要比较两个文件(不是同一个文件的两个版本,但是它们由 git 跟踪,但这无关紧要)并且我想要一些彩色输出,我该如何实现?
$ diff file_1 file_2
1,9d0
< <script ... >
< // more code
< </script>
$
Run Code Online (Sandbox Code Playgroud)
上面的代码向我展示了这些文件之间的区别,但是没有任何颜色。对于难以阅读的较长差异。
或者,有没有办法让 git(我确实有很好的颜色输出)来区分两个不同的文件(而不是对文件的更改)?
OSX (10.7.5)
合并某些文件时合并失败。
git status
Run Code Online (Sandbox Code Playgroud)
显示成功和失败的合并。
如何仅查看不成功的合并文件(冲突)。
目前我正在使用以下命令来做到这一点
find . -name '*.cpp' -o -name '*.h' | xargs grep -l '<<<<'
Run Code Online (Sandbox Code Playgroud) 在fugitive-plugin 状态窗口中,使用 访问时,可以使用:Gstatusdiff 更改文件D并切换文件以使用 提交-。
是否有任何类似的丢弃更改的快捷方式,丢弃我的意思是相当于git checkout -- filename?
更新:
在逃犯github页面上发现了一个功能请求问题 #97:结帐/删除文件的快捷方式
据此,首选方式是使用 :Gread :w
更新 2:
自 2014 年 6 月起,可以使用下面Anson 的U回答。
更新 3: 自2019 年 1 月 3 日起,键绑定映射到X
嗨,我想用 git 保存数据,加密(在某些平台上,如bitbucket或github)。因此问题:
我正在寻找不同的轻松方式:
如何在 bitbucket (/github)上设置加密存储库?现在,我是 git 的新手,因此非常感谢包含所有必要步骤或分步说明的说明!
git-crypt
我找到了git-crypt,但在网站上提到它用于单个文件加密。如果有人想加密整个存储库,他们会将其转发到git-remote-gcrypt。
git-remote-gcrypt
在他们的README.rst 中,他们把它写得很简单
快速开始
git remote add cryptremote gcrypt::rsync://example.com:repo
git push cryptremote master
> gcrypt: Setting up new repository
> gcrypt: Remote ID is :id:7VigUnLVYVtZx8oir34R
> [ more lines .. ]
> To gcrypt::[...]
> * [new branch] master -> master
Run Code Online (Sandbox Code Playgroud)
或低于
例子
# notice that the …Run Code Online (Sandbox Code Playgroud) 我读到 ZFS 和 Btrfs 使用校验和来防止数据降级,并且我读到 Git 通过对每次提交的所有内容进行散列来实现完整性。
我打算在带有 Btrfs RAID 1 的 Linux NAS 上使用 Git 服务器进行存储,但是如果 Git 具有完整性,我想这不是必需的(至少如果我想要防止数据降级的话,则不需要)。
问题: 那么 Git 的完整性虽然在每次提交时对所有内容进行散列,但是否可以防止或帮助防止位腐烂?
我希望能够使用 ssh 密钥进行身份验证,但仍然限制可以通过 ssh 隧道执行的命令。
使用 Subversion,我通过使用 .ssh/authorized_keys 文件实现了这一点,例如:
command="/usr/local/bin/svnserve -t --tunnel-user matt -r /path/to/repository",no-port-forwarding,no-agent-forwarding,no-X11-forwarding,no-pty ssh-rsa AAAAB3NzaC1yc2EAAAABIetc...
Run Code Online (Sandbox Code Playgroud)
我已经在命令中使用“/usr/bin/git-shell”尝试过这个,但我只是得到了时髦的旧fatal: What do you think I am? A shell?错误消息。