标签: git

从 git 中的“无分支”中拯救文件和提交

我开始处理我在另一个项目下的 git 子模块中的一些文件。但是,由于它是一个 git 子模块,它从未检出“master”,而只是检出头部并将文件夹中的所有文件放在“无分支”中。

现在我无意中对这些文件进行了一些更改,我才意识到我在“无分支”的项目子模块中工作。

我如何将这些文件放入一个分支(如 master)以便我可以拯救它们?

git submodule

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

Cygwin/Git 奇怪的终端问题

好吧,这很奇怪。首先,这是在最新的 cygwin 上运行的 mintty,从 cygwin 的 setup.exe 中提取 git。我正在运行 zsh。

$ git clone https://<user>@<domain>/<repository>/ ~/src/project/dev
Initialized empty Git repository in /cygdrive/c/src/project/dev/.git/
Password: <actual password in plain text appears>
# Nothing happens...
^C
$ <password text that I just typed>
zsh: command not found: <same password text>
Run Code Online (Sandbox Code Playgroud)

这里发生了什么?这是终端问题、shell 问题、git 问题还是 cygwin 问题?

更新:是的,我正在运行 Cygwin git 版本,而不是 Windows 版本:

$ which git
/usr/bin/git
$ git --version
git version 1.7.1
$ /cygdrive/c/Program\ Files\ \(x86\)/Git/bin/git.exe --version
git version 1.7.0.2.msysgit.0
Run Code Online (Sandbox Code Playgroud)

cygwin zsh git mintty

16
推荐指数
2
解决办法
7216
查看次数

当我的 CWD 在远程文件系统上时,如何有选择地禁用 zsh 的版本控制集成?

我在 OSX 上运行 zsh,有时我必须在安装的 sshfs 卷上工作。然而,git 在 sshfs 挂载上真的很慢。我的提示使用了 zsh 内置的 vc 模式内容,但在这种情况下我想跳过那部分。

每当我的 CWD 在安装的文件系统上时,我都想有选择地禁用 vc 集成。我怎样才能做到这一点?

我目前正在使用(大致)我的 .zshrc 的这个片段(好吧,.oh-my-zsh/themes,但你明白了)在我的提示中启用 git info :

zstyle ':vcs_info:*' enable hg git bzr svn p4

zstyle ':vcs_info:(hg*|git*):*' get-revision true
zstyle ':vcs_info:(hg*|git*):*' check-for-changes true

# rev+changes branch misc
zstyle ':vcs_info:hg*' formats "[%i%u %b%m]"
zstyle ':vcs_info:hg*' actionformats "(%{$fg_bold[red]%}%a%{$reset_color%})[%i%u %b%m]"

# hash changes branch misc
zstyle ':vcs_info:git*' formats "[%{$fg[yellow]%}%12.12i%{$reset_color%} %u %{$fg[magenta]%}%b%{$reset_color%}%m]"
zstyle ':vcs_info:git*' actionformats "(%a)[%{$fg[yellow]%}%12.12i%{$reset_color%} %u %{$fg[magenta]%}%b%{$reset_color%}%m]"

zstyle ':vcs_info:git*+set-message:*' hooks git-st git-stash

zstyle ':vcs_info:hg*:netbeans' use-simple true …
Run Code Online (Sandbox Code Playgroud)

zsh version-control git oh-my-zsh

16
推荐指数
1
解决办法
3231
查看次数

在 Windows 8 上通过 cygwin 使用 git

我有一个 Windows 8 开发预览(不确定它是否相关,但我从来没有在 w7 上遇到过这种麻烦)机器,我正在尝试从 github 克隆一个 git repo。

问题是我的 ~/.ssh/id_rsa 有 440 个权限,它需要是 400。我试过 chmodding 它,但对用户权限的任何更改都会反映在组权限中(即 chmod 600 导致 660 等)。这在整个文件系统中的任何文件中似乎都是不变的。

我试过搞乱 ACL 但无济于事(完全控制我的用户并拒绝每个人都导致 000)

这里有一些输出可以提供帮助:

$ git clone [removed]
Cloning into [removed]...
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0660 for '/home/john/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /home/john/.ssh/id_rsa
Permission denied (publickey).
fatal: The …
Run Code Online (Sandbox Code Playgroud)

windows cygwin git permissions windows-8-preview

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

如何让 Sublime Text 2 在侧边栏中显示 git 文件夹和文件?

将文件夹添加到 Sublime Text 2 项目时,它似乎没有显示.git子文件夹。似乎这些文件也无法通过Ctrl-P.

我禁用了 Git 插件,但这没有帮助。

windows git sublime-text-2

16
推荐指数
1
解决办法
9637
查看次数

我可以在拉取请求被接受之前删除我的分叉吗?

我在github上做了一个项目的fork,做了一个小的更正并提交了一个pull request。然而,从每个“在线”的拉取请求中,我可以看到这个开发者需要很长时间才能审查我的。问题是我不想要存储库——我只是将它分叉来解决这个问题(开发人员自己在 TODO 中)。

我的问题是:如果我从我的帐户中删除存储库,开发人员是否仍然能够接受拉取请求?这只是几行的变化。

git github pull

16
推荐指数
2
解决办法
4412
查看次数

git pull 什么都不做 / git push 只是挂起 / debug1: 期待 SSH2_MSG_KEX_ECDH_REPLY

我在 ubuntu 13.10 和 12.10 中遇到了一个问题,尝试连接到 github(git clone / pull / push 或任何东西)会失败并且没有输出。

我检查了我的 /.ssh 目录config和任何 ssh 密钥。没有配置文件,并且 ssh 密钥id_rsa与我的 github.com 帐户上的相同。

我尝试 ping github 服务器并且也可以。

我按照 github 指南来调试情况 - 它建议

ssh -T -v git@github.com
Run Code Online (Sandbox Code Playgroud)

输出停止在:

debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
Run Code Online (Sandbox Code Playgroud)

任何人都有一个解决方案可以让我的 git pull / push 等工作。

ssh git openssh github

16
推荐指数
2
解决办法
4万
查看次数

我可以使用 git 对 psd 文件和 Maya 项目进行版本控制吗?

我在 git、版本控制、共享和协作我的编程项目方面取得了巨大的成功,并且很想在 photoshop .psd、illustrator.ai和 maya 项目上做同样的事情。您可能知道,Maya 是一个出色的 3D 建模和渲染工具包,但其项目的保存方式有点像编程框架,其中包含用于源图像和纹理等的各种目录。

默认目录结构设置

在这方面使用 git 是行业惯例吗?在 github 上开源 3D 电影或游戏的 3D 文件将是不可思议的!

显然所有文件都只是数字,所以理论上 git 只更新已更改的 .jpegs 或 Maya 二进制文件的部分就可以了,但您认为实际上这会导致数据损坏和撕裂吗?就像我说的,我想对 photoshop 和 illustrator 文件做同样的事情。

如果 git 不是一个选项,我还应该如何版本、协作和开源 Maya 和 adobe 项目?

git maya adobe-photoshop

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

命令的反向输出

我正在尝试从

git log --branches --graph --oneline
Run Code Online (Sandbox Code Playgroud)

(遗憾的是,您无法传递--reverse给它,因为它说它与--graph.不兼容。)

有没有办法反转命令的输出?

bash git

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

为什么 Git for Windows 创建我无法从命令行删除的存储库?

我刚刚“重置”了 Windows 10 的安装。我从https://git-scm.org/安装了 Git 的“Git for Windows”发行版。

如果我以任何方式(无论是init还是clone)创建一个 git 存储库,则无法使用命令行提示符从我的文件系统中删除该存储库。我必须使用 Windows 资源管理器来做到这一点。

这是一个示例会话:

PS C:\Users\radix> mkdir foo


    Directory: C:\Users\radix


Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        5/10/2018   5:46 PM                foo


PS C:\Users\radix> cd foo
PS C:\Users\radix\foo> git init .
Initialized empty Git repository in C:/Users/radix/foo/.git/
PS C:\Users\radix\foo> cd ..
PS C:\Users\radix> rm foo -Recurse
rm : Cannot remove item C:\Users\radix\foo\.git: You do not have sufficient access rights to perform this operation. …
Run Code Online (Sandbox Code Playgroud)

git windows-10

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