图解Gitlab中Fork功能的使用
git123
git设置全局http代理和https代理
git设置全局http代理和https代理
git config --global http.proxy 127.0.0.1:1080取消这两个全局代表
git config --global --unset http.proxygit切换到某个tag
git clone 整个仓库后使用,以下命令就可以取得该 tag 对应的代码了。
git checkout tag_name
但是,这时候 git 可能会提示你当前处于一个“detached HEAD" 状态。
因为 tag 相当于是一个快照,是不能更改它的代码的。
如果要在 tag 代码的基础上做修改,你需要一个分支:
git checkout -b branch_name tag_name
这样会从 tag 创建一个分支,然后就和普通的 git 操作一样了。
如果项目上有一个后来新建的分支test,并且使用
git branch -a
看不到该远程分支:
* develop
remotes/composer/develop
remotes/composer/feature/194
remotes/composer/feature/198
remotes/composer/feature/199
remotes/composer/feature/200
remotes/composer/master
remotes/origin/HEAD -> origin/develop
remotes/origin/develop
remotes/origin/feature/194
remotes/origin/feature/198
remotes/origin/feature/199
remotes/origin/feature/200
remotes/origin/master
直接使用命令git checkout test,出现以下错误
解决方法是:
1、执行命令git fetch取回所有分支的更新
2、执行git branch -a可以看到test分支(已经更新分支信息)
3、切换分支git checkout test
git切换到某个tag
直接如下命令checkout某个tag,会使得当前仓库出于“detached HEAD" 状态。
git checkout tag_name
因为 tag 相当于是一个快照,是不能更改它的代码的。
如果要在 tag 代码的基础上做修改,你需要一个分支:
git checkout -b branch_name tag_name
这样会从 tag 创建一个branch_name分支,然后就和普通的 git 操作一样了。
Git根据tag回退到某个commit
1.首先查看要回退的标签信息
git show v0.0.1
$ git show v0.0.1
tag v0.0.1
Tagger: jiujuan <jixxxxx@163.com>
Date: Fri May 12 16:46:27 2019 +0800
version 0.0.1
commit cc16905383a5924c64912699460fbda0091b704d (HEAD -> master, tag: v0.0.1, origin/master, origin/HEAD)
Author: jiujuan <jixxxxx@163.com>
Date: Fri May 12 16:41:50 2020 +0800
demo
上面的commit id很长,我们只取前面7位就好了,git会自动识别
2.第二步:版本回退,将主干分支回退到某个版本
git reset --hard cc16905
回退完毕,其实就是把head指针指向了指定版本位置.
其他常用的回退命名,回退到上一个版本命令:
git reset --hard HEAD
Git把tag推送到远程
1.推送某一tag到远程仓库:
git push origin v0.0.1
2.一次推送多个标签
git push origin --tags
git创建tag的例子
1.创建tag:
git tag -a v0.0.1
或者 对某一提交的信息打tag标签,末尾是一个commit id
git tag -a v0.0.1 cc16905
2.创建tag带有说明信息:
git tag -a v0.0.1 -m "version 0.0.1, tag info"
3.创建轻量的标签tag(快速创建tag):
git tag v0.0.1
没有使用 -a, -s, -m 选项
4.对某一个提交信息打tag
比如说给提交的信息打tag,commit id为 be7a3e4
git tag v0.0.2 be7a3e4
5.对以前提交的信息打tag
git log --pretty=oneline
$ git log --pretty=oneline
cc16905383a5924c64912699460fbda0091b704d (HEAD -> master, tag: v0.0.1, origin/master, origin/HEAD) demo
be7a3e40a31de7f992262a10175e8846b861dc1b router
a1f20fe1edfcf393bb6f4a3db1e0fb52477a6bf6 code
a42f81b86dbbffb07547b83415c628e3733dbdfc lint
6d4d71917f533c1582c4ab0cc1bb080c753f6baf readme
上面这条命令显示了全部的commit id信息,有没有简短点的commit 信息,看下面的命令。
git log --pretty=oneline --abbrev-commit
上面这条命令可以显示你以前提交的日志信息。
$ git log --pretty=oneline --abbrev-commit
cc16905 (HEAD -> master, tag: v0.0.1, origin/master, origin/HEAD) demo
be7a3e4 router
a1f20fe code
a42f81b lint
6d4d719 readme
6d7e181 struct code
be072d3 go.mod
然后在用上面提到的命令: git tag tag-name commit-id
比如给:be072d3 go.mod,它的commit id为 be072d3,打tag-name为: mod,命令:
git tag mod be072d3
Git查看tag信息
1.查看某个tag信息
git show v0.0.1
2.查看所有tag信息
git tag
git branch --set-upstream 本地分支关联远程分支
git branch --set-upstream-to=origin/remote_branch local_branch
其中,origin/remote_branch是你本地分支对应的远程分支;local_branch是你当前的本地分支命,为空的时候表示当前分支。