这里将记录,我在使用git中遇到的问题和介绍一些不太常用的git 命令。
git rm与git rm –cached
当我们需要删除暂存区或分支上的文件, 同时工作区也不需要这个文件了, 可以使用
git rm file_path
当我们需要删除暂存区或分支上的文件, 但本地又需要使用, 只是不希望这个文件被版本控制, 可以使用
git rm --cached file_path
file_path 为文件路径
这个使用方法,其实还不算全面当我们将本地文件加入到index中时,此时我们进入staged状态,我们不希望这个文件被跟踪则,但是直接使用rm命令时不能删除staged状态下的文件,此时我们可以使用–cached 来使这个文件保存却不被跟踪,相反的如果我们不需要这个文件则直接使用 git rm-f 命令。
tag
tag 分为轻量级标签和含附注的标签。
git tag -a v1.4 -m 'my version 1.4'
查看特定标签
git show v1.4
GPG签署标签
**如果你有自己的私钥,还可以用 GPG 来签署标签,只需要把之前的 -a 改为 -s (译注: 取 signed 的首字母)即可:**
git tag -s v1.5 -m 'my signed 1.5 tag'
GPG验证标签
**可以使用 git tag -v [tag-name] (译注:取 verify 的首字母)的方式验证已经签署的标签。此命令会调用 GPG 来验证签名,所以你需要有签署者的公钥,存放在 keyring 中,才能验证:**
git tag -v [tag-name]
后期加注标签
#获取对象的校验和
git log --pretty=oneline
#加注标签
git tag -a v1.2 9fceb02
推送标签
git push origin [tagname]
#一次推送所有新增加的标签
git push origin --tags
参考:
时间:2017年6月12日19:42:39
我发现git对于追踪的文件是指的是本存在于仓库内的文件,而如果你新建一个文件则这个文件会被视为一个新的untrack file。
如下:
取消已经暂存的文件和修改最后一次提交
2017年6月13日12:37:39
要查看当前配置有哪些远程仓库
git remote -v
添加远程仓库
git remote show
显示远程仓库
git remote add [-t <branch>] [-m <master>] [-f] [--tags|--no-tags] [--mirror=<fetch|push>] <name> <url>
在<url>
中为仓库添加名为<name>
的远程仓库。该命令git fetch <name>
可用于创建和更新远程跟踪分支<name> / <branch>
。
-t
选项,指定特定分支,可以多于一个-t <branch>
跟踪多个分支,而不用抓取所有分支。
-f
选项,git fetch <name>
在远程信息设置后立即运行。
使用--tags
选项,git fetch <name>
从远程存储库导入每个标签。
使用--no-tags
选项,git fetch <name>
不会从远程存储库导入标签。