可以在check_git_info()前加上条件判断是否跳过这个步骤
时间: 2024-09-30 22:16:29 浏览: 19
在`check_git_info()`函数的开始添加一个简单的条件判断,可以避免在非Git仓库或不需要Git信息的情况下触发`AttributeError`。例如,你可以检查`repo`对象是否存在`remotes`属性,如果存在再进一步检查`origin`属性。以下是修改后的部分代码示例:
```python
def check_git_info():
try:
repo = git.Repo(search_parent_directories=True) # 添加search_parent_directories=True寻找上级目录的Git仓库
if 'remotes' in dir(repo): # 检查是否有remotes属性
if 'origin' in repo.remotes: # 检查是否有origin远程仓库
remote = repo.remotes.origin.url.replace('.git', '')
# ... 其他代码...
else:
print("No origin remote found, skipping Git info.")
else:
print("Not a Git repository, skipping Git info.")
except Exception as e:
print(f"Failed to get Git info: {e}")
```
这样,只有当目录确实是Git工作区,并且有origin远程仓库的时候,才会尝试获取Git URL。如果你确定无需Git信息,可以直接注释掉这个函数或者替换为无操作的代码块。