git的各种常用命令

将本地仓库中的README.md推送给远程github中的react-demo1仓库中:
"# react-demo1" >> README.md

删除.git
rm -rf .git
初始化
git init

添加文件  README.md
git add README.md

提交评论
git commit -m "first commit"

链接远程仓库react-demo1
git remote add origin https://github.com/newway7/react-demo1.git


取消链接

git remote rm origin


推送给远程仓库
git push -u origin master

拉取远程仓库最新代码
git merge origin master

删除远程仓库的文件夹
git rm --cached -r <文件夹名称>

让远程仓库的代码只有你commit的代码
 git push --force origin master


如果你先git add . 看到报错才想起来需要忽略node_modules文件夹,恭喜你,你又踩坑了!
原因是.gitignore不能忽略已经被track的文件或者文件夹,哪怕你add报错了。
碰到这种情况:


git rm -r --cached .  #清除缓存

git add .

git commit -m "update .gitignore"

git push -u origin master

git关于分支融合的指令

最近一个面试,问我关于git指令的问题,然后深入说分支呢?
然后今天就测试了一下分支的问题。

新建并切换分支:
git checkout -b dev



它是下面两条命令的简写:
$ git branch dev
$ git checkout dev

切换分支:

git checkout dev
git checkout master


关于分支融合:

在master分支下:
1-2

新建一个分支dev
1-2-3--4-5-6

切换回master分支:修改master分支的文档
1-2-7

这时候想要融合master分支下的文档到dev:


git checkout dev

git merge master


如果报错,说有冲突:
Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,

在文档中修改文档;
然后再:
$ git add readme.txt 
$ git commit -m "8"

分支dev上的git log 为:
1-2-3-4-5-6-7-8

想要把dev的分支融合到master分支上:


git checkout master

git merge dev


这里参考了https://blog.csdn.net/zl1zl2zl3/article/details/94019526 的做法








关于git rebase和merge的区别

 

 

git rebase 和merge的不同:

同一个场景:
master分支1-2

dev   分支在1的基础上拉的一个分支:
1-3

master分支融合dev分支:merge
git log :1-2-3-4 (4是融合之后形成的提交)



master分支融合dev分支:rebase
git log :1-3-4 (4是融合之后形成的提交)


如果master没有新的提交;1

dev分支 1-2-3

rebase master合并dev 

先处理冲突,在git add
git rebase --continue

就会在master分支上后续加上dev分支提交的commit,commit的名称不变但是hash值变了

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值