本文共 5329 字,大约阅读时间需要 17 分钟。
使用工具:idea,github,码云webstorm和idea由于都是一个公司的产品,操作手法基本一致,这里主要是讲idea1.安装idea,下载git工具,idea中进行关联2.在本机上生成公钥和私钥,然后在自己的github和码云账号上进行注册,这样才能把自己的项目上传上去。3.在主分支master上进行git add,commit,push,pull等演示操作4.模拟开个分支然后再合并主分支的操作5.使用stash存储合并主分支6.模拟一些特殊场景的报错解决方法7.github和码云上传的介绍8.本次学习git,github,码云所推荐您看的一些文章
2.1 安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!打开Git Bash 命令行操作界面。
2.2创建ssk,获得本机的公钥和私钥
ssh-keygen -t rsa -C "youremail@example.com"
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人,目录就是上面的c:/users/sunjian/.ssh/id_rsa
第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面: 然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:3.私钥公钥配置好了,现在上传到github的路已经打通了。
3.1在idea上新建一个springboot项目用来测试github这步作用主要是可以把本地项目上传到github上面
现在就先把这个springbootdemo上传到github上面,然后在测试commit,add,pull,push
如何把本地修改的文件先放到本地库中再从本地库中去除
如果是新增文件夹,一定要把文件夹git add进去,光add文件也不行.
push完成,远程github服务器更新了
竟然能够回退上2个版本,服务器上的没删,本地的回退了2个版本。那就要能够返回到最近那个版本。如何操作呢
这个版本号也没必要写全,git是模糊搜索的,不写全可能会搜索出多个版本,你在选择其中一个版本即可
说明现在是在dev的分支上,我们现在git add,commit,push,先提交到自己的dev分支上
首先要注册码云的账号密码,操作手法和github差不多,把公钥和私钥去码云那边注册。
总结:本次git学习推荐网站
本次学习的过程:一开始先通过本地git,git bash非图形化界面练了遍,然后再根据软件来操作,git里面有很多命令,软件当中的一些操作也是常用指令,如果满足不了需求,可以自己输入指令。下面是git一些常用指令。创建文件夹: mkdir进入文件夹: cd 显示当前目录: pwd把当前目录变成Git: git init显示隐藏目录: ls -ah查看git仓库状态: git status把文件添加到git仓库: git add 把文件提交到仓库: git commit -m "说明"查看修改后的不同: git diff查看提交历史: git log --pretty=oneline回退到上一个版本: git reset --hard HEAD^回退到某个版本: git reset --hard 查看命令历史: git reflog工作区和暂存区对比: git diff暂存区和分区对比: git diff -- cached工作区和分支对比: git diff -- 丢弃工作区的修改: git checkout -- 撤销暂存区的修改: git reset HEAD + git checkout -- 或 git reset --hard HEAD删除工作区文件: rm 从版本库删除该文件: git rm + git commit -m "说明"撤销工作区文件的删除: git checkout -- 撤销暂存区文件的删除: git reset HEAD + git checkout -- 或 git reset --hard HEAD创建SSH Key: ssh-keygen -t rsa -C "15521232672@163.com"关联一个远程库: git remote add origin git@github.com:RaymondHww/learngit.git推送master分支的内容: git push -u origin master (第一次推送要参数 -u ,之后就不用了)从远程克隆仓库到本地: git clone git@github.com:RaymondHww/gitskills.git查看分支: git branch创建分支: git branch 切换分支: git checkout 创建+切换分支: git checkout -b 合并某分支到当前分支: git merge 删除分支: git branch -d 查看分支合并情况: git log --graph --pretty=oneline --abbrev-commit使用普通模式合并: git merge --no-ff -m "说明" dev把工作现场储藏: git stash查看储藏的工作现场: git stash list恢复储藏的工作现场: git stash apply stash@{0}删除stash内容: git stash drop stash@{0}恢复并删除stash内容: git stash pop强行删除未合并的分支: git branch -D 显示详细的远程库信息: git remote -v推送分支到远程库: git push origin master 或 git push origin dev克隆远程库到本地后只有master分支在本地创建和远程分支对应的分支:git checkout -b branch-name origin/branch-name建立本地分支和远程分支的关联: git branch --set-upstream branch-name origin/branch-name因此,多人协作的工作模式通常是这样:首先,可以试图用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。tag就是一个让人容易记住的有意义的名字,它跟某个commit绑在一起。打一个新标签到最新的提交上: git tag v1.0打一个新标签到历史的提交上: git tag v1.1 查看所有标签: git tag查看标签信息: git show v1.0创建带有说明的标签: git tag -a v1.2 -m "说明" 通过-s用私钥签名一个标签: git tag -s v1.3 -m "说明" 删除本地标签: git tag -d v1.0推送某个标签到远程: git push origin 一次性推送全部尚未推送到远程的标签:git push origin --tags删除已经推送到远程的标签: git tag -d v1.0 然后 git push origin :refs/tags/v1.0
关注我的公众号,都是满满的干货!
转载地址:http://kupvl.baihongyu.com/