# 引入

import {
  getAllGitRepo,
  getGitCurBranch,
  getGitCommitMessage,
  getGitCommitInfo,
  getGitLastTag,
  getGitCommitsBeforeTag,
  getGitAuthor,
  reCloneGitRemote
} from 't-comm';

// or

import {
  getAllGitRepo,
  getGitCurBranch,
  getGitCommitMessage,
  getGitCommitInfo,
  getGitLastTag,
  getGitCommitsBeforeTag,
  getGitAuthor,
  reCloneGitRemote
} from 't-comm/lib/git/index';

# getAllGitRepo(root)

描述

获取所有 git 仓库

参数

参数名 类型 描述
root string

根路径

返回: array

路径列表

示例

getAllGitRepo('/root/yang');

[
  {
    root: '/root',
    origin: 'git@git.address',
  }
]

# getGitCurBranch()

描述

获取当前分支

参数

返回: string

分支名称

示例

getGitCurBranch()

// => master

# getGitCommitMessage(root, mergeCommit, splitMessage)

描述

获取提交信息

参数

参数名 类型 描述
root string

根路径

mergeCommit boolean

是否包含 merge 的提交

splitMessage boolean

是否去掉提交信息的前缀

返回: string

提交信息

示例

getGitCommitMessage()
// '优化一部分文档'

# getGitCommitInfo(root, mergeCommit, splitMessage)

描述

获取提交信息

参数

参数名 类型 描述
root string

根路径

mergeCommit boolean

是否包含 merge 的提交

splitMessage boolean

是否去掉提交信息的前缀

返回: Object

提交对象

示例

getGitCommitInfo()
{
  author: 'novlan1',
  message: ' 优化一部分文档',
  hash: '0cb71f9',
  date: '2022-10-02 10:34:31 +0800',
  timeStamp: '1664678071',
  branch: 'master'
}

# getGitLastTag()

描述

获取最新tag

参数

返回: string

最新tag

# getGitCommitsBeforeTag(tag)

描述

获取tag到head的提交数目

参数

参数名 类型 描述
tag string

git标签

返回: string

tag至今的提交数目

# getGitAuthor(isPriorGit)

描述

获取当前用户

参数

参数名 描述
isPriorGit

是否优先使用git用户信息

返回:

user

# reCloneGitRemote(list)

描述

根据配置表,重新 clone 仓库

参数

参数名 类型 描述
list Array<item>

列表

item.root string

路径

item.origin string

origin

Last Updated: 2024/10/11 07:54:02