我有一个与某个分支关联的Git工作树,该分支以某种方式被删除。
似乎没有任何效果。 apiVersion: apps/v1
kind: Deployment
metadata:
name: support
labels:
app: support
namespace: default
spec:
replicas: 1
selector:
matchLabels:
app: support
template:
metadata:
labels:
app: support
spec:
terminationGracePeriodSeconds: 3
imagePullSecrets:
- name: mysecret
containers:
- name: support
image: image-name
command:
- "/bin/sh"
- "-c"
- "sleep infinity"
volumeMounts:
- name: kubectl-binary
mountPath: /usr/bin/kubectl
readOnly: true
- name: kubectl-config
mountPath: /etc/kubernetes/config
readOnly: true
volumes:
- name: kubectl-binary
hostPath:
path: /usr/bin/kubectl
- name: kubectl-config
hostPath:
path: /etc/kubernetes/config
正在报告git status
。
我有未提交的更改。 如何在此工作树中恢复正常?
答案 0 :(得分:1)
Git试图阻止您删除任何工作树中当前已检出的分支。
但是,使用某些版本的Git相关工具,可能可以删除已检出的分支(我是在使用从其他工作树启动的Initial commit
时完成的)。如果发生这种情况,工作树将变得混乱,您将看到诸如gitk
和unknown revision HEAD
之类的消息。由于这种困惑,诸如bad revision 'HEAD'
和gitk --all
之类的普通恢复工具将无法正常工作。
您最好挽救工作树的方法(特别是在您未完成工作的情况下)是检出先前与分支相关的确切修订版本。启用此功能的一种方法是运行git stash
(即使gitk --reflog
无效),然后在正确的位置重新创建分支。
重新创建分支后,可以将其检出并恢复工作。
感兴趣的:Why does git worktree add create a branch, and can I delete it?