git操作个人总结

个人觉得优秀的git学习资料

https://blog.csdn.net/w958796636/category_6576672.html (git 操作)
https://backlog.com/git-tutorial/cn/stepup/stepup1_1.html(猴子都能懂的GIT入门-高级篇)

https://www.liaoxuefeng.com/wiki/896043488029600(廖雪峰的Git教程)

1.git关联远程仓库步骤

1.1 初始化一个Git本地仓库,使用git init命令。
1.2 添加文件到Git仓库,分两步:
1.2.1 使用命令git add 例如 git add text.txt 注意,可反复多次使用,添加多个文件;
1.2.2 或者使用git add . 表示将工作区的所有文件添加到暂存区中
1.3 使用git commit -m ‘注释’ 表示将暂存区的文件上传到本地仓库中,并且添加注释
1.4 关联远程仓库,指令 git remote add 远程仓库名+仓库地址 例如:git remote add origin https://github.com/1242793152/git_practice.git
1.5 将本地仓库推上远程仓库指令: git push -u origin main(表示将本地的代码推上名字叫 origin 分支名叫main上) 如果出现如下的话说明(当前分支 main没有对应的上游分支。为推送当前分支并建立与远程上游的跟踪,则使用如下指令,与远程仓库分支建立关联:git push —set—upstream 远程仓库名字+本地所需要匹配的分支名 例如 git push --set–upstream origin main)
1.6 .git push -u origin 7-cross-section-record:7-cross-section-record (git push -u 远程仓库名字 本地分支名字:远程仓库分支)

2.git关联远程仓库步骤

2.1 git restore 可以恢复工作区的修改,丢弃工作区的改动
指令: git restore <文件> 例如 git restore . 表示放弃工作区所有改动
2.2 git restore --staged 文件或者. 表示恢复已经从工作区提交到暂存区的文件即将存放到暂存区的文件由重新还回到工作区
指令:git restore --staged <文件> 或者 git restore --staged .
目的:取消暂存,把放在暂存区的文件又重新放回到工作区
2.3 git status可随时掌握工作区的状态,如果告知有文件被修改过,用git diff可以查看修改内容
2.4 git log命令显示从最近到最远的提交日志,按q(quit)退出查看提交日志,如果没有显示所有的git操作日志,可以通过敲击enter来显示所有内容
2.4.1 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上–pretty=oneline参数:
例如 git log —pretty=oneline
2.5 回退版本:首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交1094a…(注意我的提交ID和你的肯定不一样,上一个版本就是HEAD^ 可以写成 git reset —hard HEAD~ 1 ,上上一个版本就是HEAD^^ 也可以写成git reset —hard HEAD~2,
2.5.1 git reset --hard 1094a 回退到id为1094a的版本
2.6 git reflog用来记录你的每一次命令
2.6.1 穿梭前,用git log可以查看提交历史,以便确定要回退到哪个版本
2.6.2 要重返未来,用git reflog查看命令历史,以便确定要回到未来的哪个版本。
2.7 git diff HEAD 显示的是已提交到工作树中文件和未提交到工作树中文件的所有修改。查看已缓存的与未缓存的所有改动。

3.查看分支

git branch:查看本地分支,当前分支前面会标一个*号。
git branch -r:查看远程分支
git branch -a:查看本地分支和远程分支,远程分支会用红色表示出来(如果你开了颜色支持的话)。
git branch -vv:查看本地分支对应的远程分支。
3.1 git remote -v查看远程库信息:(添加了远程仓库的什么地址以及仓库名)
3.2 git remote remove 远程仓库的名字 例如 git remote remove origin 解除跟远程仓库的关联
3.3 git branch -m oldName newName 重命名分支

4 git switch 分支名 例如 git switch dev 切换到dev分支
4.1 git switch -c 分支名创建并切换到这个分支名
4.2 git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:
git branch dev 创建 新分支dev
git checkout(switch) dev 切换到分支:git switch 分支名

5 现在,我们把dev分支的工作成果合并到master分支上:
git merge dev —————这里会将工作成果合并到master分支上,是因为已经切换回了master 分支了并且又输入了。git merge dev。所以就将dev分支合并到了主分支master
git merge命令用于合并指定分支到当前分支

6 git tag 打标签
6.1 git tag 就可以打一个新标签:
6.2 可以用命令git tag查看所有标签:
6.3 默认标签是打在最新提交的commit上的。有时候,如果忘了打标签,比如,现在已经是周五了,但应该在周一打的标签没有打,怎么办?
方法是找到历史提交的commit id,然后打上就可以了:
git log --pretty=oneline --abbrev-commit
比方说要对add merge这次提交打标签,它对应的commit id是f52c633,敲入命令: git tag v0.9 f52c633
6.4 标签不是按时间顺序列出,而是按字母排序的。可以用git show 查看标签信息:
6.5 还可以创建带有说明的标签,用-a指定标签名,-m指定说明文字:git tag -a v0.1 -m “version 0.1 released” 1094adb

—————————工作中遇到的问题————————
有域名限制的时候,重新设置一下域名
unset http_proxy
unset https_proxy

  1. 如果有代理,就试下挂代理,命令格式如下
    git config --global http.proxy http://127.0.0.1:7890
    git config --global https.proxy http://127.0.0.1:7890
  2. 如果没有代理,就试下清理代理,命令如下
    git config --global --unset http.proxy
    git config --global --unset https.proxy
  3. 上面两个试了没用,就试下最后一个,忽略SSL验证
    git config --global http.sslVerify false
    —————————————————————————
    git fetch 拉下远端仓库的所有分支,使本地与远程保持一致,但这个时候如果不创建的话,本地仍没有与远程分支一致的本地分支

创建本地跟踪分支并从远程分支拉取代码、建立当前分支与指定远程分支的追踪关系

该命令创建本地分支跟踪分支<本地分支名>,并从远程分支<远程主机名>/<远程分支名>拉取代码。

git branch --track <本地分支名> <远程主机名>/<远程分支名>
git switch -c <本地分支名> <远程主机名>/<远程分支名>
git checkout -b <本地分支名> <远程主机名>/<远程分支名>

建立当前分支与指定远程分支的追踪关系,但不会拉取代码。参数"-u"和"–set-upstream-to"同样用处。

$ git branch -u <远程主机名>/<远程分支名>
$ git branch --set-upstream-to <远程主机名>/<远程分支名>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值