一、git的日常操作
1.先git init 创建本地仓库(生成的git文件不要制除注:git文件记录了当前的链接仓库地址、远程、本地分支、版本号等等)
2.(1)git clone+仓库地址,直接链接到远程仓库的默认分支,一般为master,默认分支可在仓库进行变更(2)git remote origin add origin+远程仓库地址
3.如果是按照2(2)拉取的代码,继续git remote-v/git remote -w 查看是否链拴成功及正确
4.链接不成功操作删除链接的远程仓库:git remote origin remove+2(2)中链接的仓库然后再重新执行2
5.查看当前本地仓库:git branch
5.查看当前远程操作仓库:git branch -w
7.查看远程仓库的所有分支:git branch -a/git branch -v
8.如果7没有查看到所有分支解决办法:用git fetch 本地与远程分支保持一致,再执行7的操作
9. git checkout+分支名 切换已有本地分支
10.git checkoput -b+分支名 创建新分支并且切换到新分支
11.git pull origin+远程分支名 从远程分支拉取代码
12.git add.把整个项目提交到暂存区
13.git add+文件名 把这个文件单独提交到仓库项目里面
14.git commit -m + "解程说明*
15.使用本地:git merge B,远程git merge origin/merge(比如当前分支是master,使用git merge B把B分支的代码合并到master)
16.git push origin+远程分支名 提交到远程仓库相应的分支下;
以上仓库是基于本地分支与远程分支统一的情况下(例如本地是marst,远程也是marst),默认本地分支与远程分支保持一效
17.git branch --set-upstream-to=origin/远程分支名 本地分支名 把不一致的远程分支跟本地分支进行链接
18.git log查看提交的历史版本记录(结束以后按q键退出)
19.当前版本出现问题需要回退到某一版本时:git reset --hard+指定版本号
20.git status查看工作区文件的状态红色代表:工作区、文件发生修改还没提交到暂存区、绿色代表:暂存区,修改的文件已经通过git add.提交到了暂存区
21.当出现变动时可以使用:git diff 比较两个版本
23.删除本地分支 git branch--delete+本地分支名;
24.删除远程分支 git push origin --delete+远程分支名
25.本地分支内容覆盖远程分支内容:git reset --hard origin/元程分支名:
26.本地分支发生变化,远程未变化,此时不能简单的git pull会报错:如果想放弃本地临时提交:git pull --force origin+远程分支名:本地分支;(把远程提制覆盖到本地)
27.当git pull origin+玩程分支时,报fatal:refusing to mergeunrelated错误时:报错原因:版本不一致导致的错区:解决办法:git pull origin+远程分支 --allow-unrelated-histories
以上是出现相应问题的操作
二、git tag的用法
1>、查看、创建、提交tag
1.git tag / git tag -l 列出现有的标签
2. git tag -l +标签名 搜索特定的标签
3.git tag -a + 版本(自定义)-m + '注释' 创建含附注类型的标签
4.git show 查看相应标签的版本信息,并连同显示打标签时的提交对象
5. git tag -s +版本(自定义)-m + '注释' 如果你有自己的私钥,还可以用 GPG 来签署标签
6.git tag +版本 轻量级标签创建
7. git tag -v [tag-name] 验证标签
8、git tag -a [tag-name] + 版本号(例如:git tag -a v1.2 9fceb02) 已经提交过忘记了大标签后期补充
9.git push默认情况下并不会把 标签 提交到远程仓库中,只有通过git push origin [tag-name]才可以
10.一次性推送所有分支到远程 git push origin --tags
2>、拉取tag
1. git clone 克隆完代码以后 git checkout tag_name 可以获取对应标签的代码
2.tag代表是不可以被修改的,是已经定格的代码 ,如果想要在基础上修改代码可以使用git checkout -b branch_name tag_name以选中的tag_name为基础创建一个新的分支,再修改代码
3>、删除tag
1.如果是删除本地标签 git tag -d [tag_name]
2.git push origin :refs/tags/[tag_name]
3.如果要删除远程仓库的标签 上述 1+2