这部分只是记录作者自己不大熟练的git指令操作,如果需要详细的git操作教程,请自行百度

基础操作

几个基础的指令就不写了
一个基础知识:pull = fetch + merge

clone add commit push pull 这几个指令使用vscode的git界面进行操作更加方便快速

版本跳跃

vscode的git似乎在版本回退上操作不大方便,可能是我不大会使用,这里直接记录版本跳跃的git指令

1
2
3
4
git reflog // 查看所有的版本索引号
git reset --hard // 版本索引号,可以前进也可以回退
// 如果想要修改版本之后进行强制提交覆盖github上的内容,可以使用
git push -f origin <branch-name>

版本比较

vscode的版本比较的直观,但是似乎没法将本地库中的历史版本与当前版本进行比较,这里记录一下

1
2
3
git diff [文件名] 将工作区中的文件和暂存区进行比较
git diff [本地库中的历史版本] [文件名] 将工作区中的文件与本地库历史记录比较
不指定文件名将会将工作区的所有文件都进行比较

分支操作

vscode的git管理界面能够查看创建以及切换分支

如果在git bash中则使用一下指令

1
2
3
4
5
git branch -v 查看所有的分支以及当前在哪个分支上
git branch [分支名称] 创建新的分支
git checkout [分支名称] 切换到目标分支
git checkout -b [分支名称] 创建并切换到目标分支
git merge [分支名称] 将目标分支合并到当前所在的分支上 如果出现冲突,需要修改之后,add后commit

标签

这部分第一次学习,做一个记录,平时似乎很少用到

创建标签

1
2
3
4
5
git tag <name> 给当前的分支附上标签名
git tag -a <name> -m "introduction" 附上标签名的同时加上描述,描述在git show展示
git tag 查看所有的标签
git tag <name> <id> 给id分支附上标签名
git show <tagname> 查看tagname标签的信息

标签操作

1
2
3
4
git push origin <tagname>可以推送一个本地标签;
git push origin --tags可以推送全部未推送过的本地标签;
git tag -d <tagname>可以删除一个本地标签;
git push origin :refs/tags/<tagname>可以删除一个远程标签。

远程仓库

邀请队友

github项目仓库的setting中cooperation,输入队友账号即可

跨团队协作

fork队员在pull request中点击new pull request,created pull request,view pull request
项目队长在pull request中点击目标request
(团队间直接在github赋予权限就可以直接clone和pull、push)

白名单

.gitignore
常见白名单:
图片文件缩略图文件 *.ini
python文件的编译文件 *.py[cod] *.so *.egg *.egg-info dist build

1
git check-ignore -v App.class 检查指定文件是由于哪行规则而进入白名单的

不排除.gitignore和App.class的白名单写法:

1
2
!.gitignore
!App.class