const { clone, rmGit, tag, branch } = require('@s7n/git-helper');
拉取远程仓库
clone(https://github.com/facebook/react.git)
clone(https://github.com/facebook/react.git, { name: 'my-react-project' });
clone(url, [param]);
- url: git 地址
- param
- [name]: 对 clone 到本地项目的重命名(默认:git repo 名称)
- [dest]: 保存本地路径(默认:当前文件夹)
- [branch]: 拉取的分支(默认:master)
destUrl (string): clone 下来项目的绝对路径
删除指定文件夹下的 .git
目录
rmGit('/User/name/react-project');
rmGit(destUrl);
- destUrl: 文件目录
destUrl (string): 文件目录
对标签的操作集合
列出标签
tag.list();
// ['v1.0.1', 'v1.0.2', 'v2.0.1']
tag.list('v2.0.*')
// ['v2.0.1']
list(tagSearch);
- tagSearch [string]: 模糊搜索。默认:不填,列出所有标签
Array<string> : 标签数组
创建标签
tag.create('v2.1.0')
// v2.1.0
create(tag);
- tag (string): 标签名
注意:当前仅会创建一个轻量级标签(lightweight)
tag (string): 创建的标签名
删除本地标签
tag.delete('v2.1.0')
// v2.1.0
delete(tag);
- tag (string): 标签名
tag (string): 删除的标签名
删除远程标签
tag.deleteRemote('v2.1.0')
// v2.1.0
deleteRemote(tag);
- tag (string): 标签名
tag (string): 删除的标签名
将某个标签推送到远程
tag.push('v2.1.0')
// v2.1.0
push(tag);
- tag (string): 标签名
tag (string): 推送到远程的标签名
将本地标签全部推送到远程
tag.pushAll()
无 (void)
无 (void)
对分支的操作集合
列出标签
branch.current();
// master
void
branch (string): 当前分支名
创建分支
tag.create('new-branch1')
// new-branch1
tag.create('new-branch2', { checkout: true });
// new-branch2
create(branch, [param]);
- branch (string): 分支名
- param :
- checkout (boolean): 是否同时切换分支。默认: false
branch (string): 分支名
删除本地分支
branch.delete('new-branch1')
// new-branch1
// equal to git branch -d new-branch1
branch.delete('new-branch2', { force: true});
// new-branch2
// equal to git branch -D new-branch2
delete(branch, [param]);
- branch (string): 分支名
- param
- force (boolean): 是否强制删除分支。默认: false
branch (string): 删除的分支名
删除远程分支
branch.deleteRemote('new-branch1')
// new-branch1
deleteRemote(branch);
- branch (string): 分支名
branch (string): 删除的分支名
将当前分支推送到远程
branch.push('new-branch1')
// new-branch1
push(branch);
- branch (string): 推送到远程的分支名
branch (string): 推送到远程的分支名