git教程简单实用

git使用命令行操作时有提示,多注意观察分析可以加深理解。

如何处理merge问题

可以用 git diff 查看两个分支的区别进行 merge 修改后的文件需要 commit 用git log查看会发现本地仓库指针版本比远程仓库新需要push。

git仓库操作

git添加/删除远程仓库 - front-gl - 博客园

查看远程仓库路径——git remote -v

添加远程仓库——git remote add origin <你的项目地址> //注:项目地址形式为:https://gitee.com/xxx/xxx.git或者 git@gitee.com:xxx/xxx.git

删除远程仓库——git remote rm origin

本地仓库关联远程仓库(有问题查看下文问题2)

1、git init

2、git remote add origin <你的项目地址>       //注:项目地址形式 为:http://git.oschina.net/xxx/xxx.git或者 git@git.oschina.net:xxx/xxx.git(需要先在页面创建远程仓库)

3、$ git push -u origin master 

git分支操作

查看本地分支 git branch 查看远程分支 git branch -r 查看所有分支 git branch -a

创建新的本地分支 git branch new_branch(本地名)

创建新的本地分支并切换 git checkout -b new_branch(本地名)

创建远程分支 git push origin new_branch(本地名):new_branch(远程名 可以不同) 

注意:通过本地命令创建远程分支时需要关联,不然无法push或者使用远程地址加分支的参数进行push(git会有提示)。

关联远程分支 git branch -- set-upstream-to = origin/new_branch(远程名)

删除本地分支 git branch -d new_branch(本地名)   注意:需要切换到其它分支,不然无法删除。

删除远程分支 git push origin :newbranch(远程名) 或者  git push origin --delete newbranch(远程名)

git clone 指定分支

git clone -b 分支名称 git地址

git clone 命名目录名

git clone git地址  目录名

git 回退(撤销更改)

git工作区,暂存区撤销时

还没有git add 使用该指令进行撤销:  git checkout -- fileName  

已经git add还没有commit:1.git reset HEAD fileName   +  2.git checkout -- fileName

已经commit版本回退时,reset会删除版本记录(可以在远程历史中找到被删除的commitid 进行恢复),revert重做对应版本。

git reset --hard commitId  此时本地仓库版本晚于远程仓库 需要强制push  使用 git push -f

git revert -n  commitId 此时对应版本重做 需要重新commit push

git push origin 和 git push -u origin master 区别

$ git push origin

上面命令表示,将当前分支推送到origin主机的对应分支。 

如果当前分支只有一个追踪分支,那么主机名都可以省略。 

$ git push 如果当前分支与多个主机存在追踪关系,那么这个时候-u选项会指定一个默认主机,这样后面就可以不加任何参数使用git push。

$ git push -u origin master 上面命令将本地的master分支推送到origin主机,同时指定origin为默认主机,后面就可以不加任何参数使用git push了。

 不带任何参数的git push,默认只推送当前分支,这叫做simple方式。此外,还有一种matching方式,会推送所有有对应的远程分支的本地分支。Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。

git删除(暂存区和工作区删除)

【原创】Git删除暂存区或版本库中的文件 - cposture - 博客园

仅仅删除暂存区(可以理解为撤销add)   git rm --cache 文件名 还有一种情况就是未添加的文件还修改了 需要进行撤销(git restore --staged filepath)或者加 -f强制删除

删除暂存区和工作区  git rm -f 文件名

git官网下载太慢解决方法
https://blog.csdn.net/weixin_44198965/article/details/99686507

问题1:remote: Incorrect username or password ( access token )

remote: Incorrect username or password ( access token )_风叶翩翩的博客-CSDN博客  windows凭据修改对应网站

问题2:refusing to merge unrelated histories

记Git报错-refusing to merge unrelated histories_铁乐与猫的博客-CSDN博客  

git pull origin master --allow-unrelated-histories

如果要想完全掌握git还是要从理论基础出发,如下:

具体参考:Git 教程 | 菜鸟教程

先要理解上面的图。注意点

pull时必须将工作区的内容提交到本地仓库。pull = fetch + merge

fetch时并没有将远程仓库分支的东西拉到本地仓库分支,只是在本地仓库维护了一个远程分支也可以理解为一个版本(避免上图误解),需要merge(merge指的是分支间的操作 并不是工作区 暂存区相互操作),在此之前也需要把工作区的内容提交到本地仓库分支。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值