ssh
可以-i
选择在身份验证时告诉使用哪个私钥文件:
-i identity_file
选择一个文件,从中读取用于 RSA 或 DSA 身份验证的身份(私钥)。?默认
~/.ssh/identity
为协议版本 1~/.ssh/id_rsa
和~/.ssh/id_dsa
协议版本 2。?身份文件也可以在配置文件中按主机指定。可以有多个-i
选项(以及在配置文件中指定的多个身份)。
是否有类似的方法来告诉git
在~/.ssh
目录中有多个私钥的系统上使用哪个私钥文件?
我可以以更简单的方式执行以下操作吗?
git checkout origin/master
git branch -D master
git branch master
git checkout master
Run Code Online (Sandbox Code Playgroud) 我正在 GitHub 上使用一个 repo,每次我尝试推送某些东西时,它都会询问我的 GitHub 用户名和密码。我不希望它这样做。
我尝试了在 Git 中设置电子邮件的说明,即设置 Git 变量 github.user 和 github.token,但这没有任何区别。
我不明白为什么会这样。
有没有办法在 git 中列出当前受源代码控制的所有文件?(不仅仅是那些被修改的)。
我们最近从 SVN 切换到 Git,同时将我们的实时系统置于版本控制中(而不是本地检出和文件复制到实时)。
在分配给我的项目中,我们都访问同一个存储库,并将更改生效git pull
。这会导致问题,因为我们的 Web 设计人员将更改推送到 VCS 中,而这些更改不应处于活动状态,但应处于 Web 测试环境中。
当其中一位开发人员投入使用时,他将获得所有(可能未完成的)更改。
我想过实时切换到一个额外的分支,然后合并更改的内容,但由于我缺乏 git 知识,我不知道该怎么做。
我的想法是:
git branch live
) 中创建一个新分支。git
checkout master; git pull; git
checkout live
)git merge master
问题是切换到 master 或将所有内容直接拉入实时系统会导致问题,所以我宁愿避免这种情况。
有没有办法做到这一点,或者有没有更好的方法来管理 Live 系统(除了训练 webbies 不要推送未完成的东西)。
Git 现在能够使用 签署提交git commit -S
,这很棒,但有时我忘记了标志commit
,有时我将我申请的补丁邮寄给自己am
,并且该命令没有签名标志。
有没有办法为已经记录的提交添加签名?
我有 2 个没有推送的提交:
$ git status
# On branch master
# Your branch is ahead of 'faves/master' by 2 commits.
Run Code Online (Sandbox Code Playgroud)
如何回滚我的第一个(最旧的),但保留第二个?
$ git log
commit 3368e1c5b8a47135a34169c885e8dd5ba01af5bb
...
commit baf8d5e7da9e41fcd37d63ae9483ee0b10bfac8e
...
Run Code Online (Sandbox Code Playgroud)
从这里:
http://friendfeed.com/harijay/742631ff/git-question-how-do-i-rollback-commit-just-want
我只需要做:
git reset --hard baf8d5e7da9e41fcd37d63ae9483ee0b10bfac8e
Run Code Online (Sandbox Code Playgroud)
那是?
有没有办法在提交并推送到 GitHub 后编辑提交消息?我看到有一个“添加注释”以及内联评论,但没有实际编辑提交消息。git 扩展中还有“修改提交”,但这不会编辑现有消息。
当我在 Mac 上使用 Git 并需要进行变基时,Vim 编辑器默认启动。我更喜欢 Nano——有人可以解释一下如何重新配置 Git 以使其使用 Nano 进行变基吗?
如何创建右键单击上下文菜单条目以在ConEmu中的给定文件夹中打开 Git Bash ?有关Console2的等效问题,请参阅Console2中的Git Bash Here。