git 学习总结
来源:互联网 发布:pageoffice java word 编辑:程序博客网 时间:2024/06/11 16:00
初始化
git init
添加新单位
git add .
提交单位
git commit
查看git状态
git status
查看提交历史
git log
回到上一个版本 HEAD^ 上上个版本是HEAD^^ ,前十个版本是HEAD~10
git reset --hard HEAD^
如果后悔,还想回到刚才的最新版本(只需要输入几位就好了,git会自动去找)
git reset --hard 345435
如果命令行已经关闭了, 则可以输入以下命令查看
git reflog
如果想放弃本次add 和commit的内容,回到上一个add 或者commit的状态
git checkout -- a.txt
如果修改已经add到了stage , 则先将信息拉回工作区,再从工作区撤销修改
git reset HEAD a.txt
如果你已经发布到了本地版本库, 还可以通过前面的版本回退回到过去..
删除
rm c.txt
本地已经删除,但是git没有更新,所以
1.确认删除
git rm c.txtgit commit -m 'remove c'
2.取消删除 , 可以还原
git checkout -- c.txt
git 工作区/暂存区概念详见
https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013745374151782eb658c5a5ca454eaa451661275886c6000
工作区如果有更改, 一定要先git add到缓存区 , 保证缓存区最新之后在git commit .
远程库
要关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git
;
关联后,使用命令git push -u origin master
第一次推送master分支的所有内容;
此后,每次本地提交后,只要有必要,就可以使用命令git push origin master
推送最新修改;
创建新分支,并切换
git checkout -b dev
其实相当于两句代码,创建:git branch dev
切换:git checkout dev
查看当前分支,和所有分支情况
git branch
回到master分支, 合并dev分支的最新修改内容
git merge dev
删除分支
git branch -d dev
分支冲突
git merge 出现冲突之后, 可以找到冲突的文件,进行修改 ,修改之后再重新add commit , 后面变为下图所示
加上–no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。
git merge --no-ff -m "merge with no-ff" dev
bug 分支
手头工作做到一半,需要去改一个bug,切换到一个bug分支
现在dev分支提交缓存
git stash
在切换到bug分支,解决完毕bug以后,切换到dev
查看当前的缓存目录
git stash list
选择以何种方式应用缓存
1.git stash apply
此方式恢复后stash的内容不会删除 需要使用 git stash drop
来手动删除
2.git stash pop
此方式恢复之后,stash的内容会自动删除
多人模式下的分支开发和推送远端:
首先,可以试图用git push origin branch-name
推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull
试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name
推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name
。
这就是多人协作的工作模式,一旦熟悉了,就非常简单。
commit 的版本号码太过于无序 , 可以使用tag标签来管理 一个tag标签对应一个标记~
给当前版本打标记
$ git tag v1.0
对过去的commit号码6224937打标签
git tag v0.9 6224937
显示标签对应的信息
git show v0.9
标签部分未完待续…..
- git命令 学习总结
- git学习总结
- Git学习总结
- git学习总结
- GIT的学习总结
- git学习总结
- Git学习总结
- Git 学习总结
- Git学习总结
- Git学习总结
- git学习总结
- Git学习总结
- Git学习总结
- Git学习总结
- Git 学习总结
- git 命令学习总结
- Git学习总结
- git学习总结(一)
- 记录tomcat 8.0.26/27/28 容器bug,导致解析jsp错误
- Kafka Java Producer代码实现
- android library引用失败,出现红叉叉解决办法
- 《深入理解java虚拟机》-第2章
- 圣杯布局&双飞翼布局
- git 学习总结
- 分布式系统之Erasure Code
- python---os.system()与subprocess.call()使用,POST与GET 请求,代理抓包
- MacOS High Sierra(10.13.2) 编译Faiss -- 包括问题解决
- Oracle system用户被锁定,快速解锁的方法
- jquery使用整理
- HDU 2028 Lowest Common Multiple Plus(最小公倍数)
- js获取url中的中文参数出现乱码解决
- 数据库Postgresql在使用Hibernate自动新增字段后插入不生效