Git学习
2018-07-22 16:07:59 9 举报
git学习笔记
作者其他创作
大纲/内容
git常用命令:git config user.nam --查看当前用户git config user.email --查看当前用户邮箱mkdir xxx --创建一个目录pwd --查看当前所在目录git init --初始化当前目录为git可管理的一个仓库git add xxx.xx ... --将某些文件添加到git暂存区git commit -m \"xxxx\" --将添加到git暂存区的所有文件提交到当前分支git status --查看是否有文件被修改,not stages-还没有add到暂存区,to be commited-add到暂存区了还没commit,nothing to commit-已经提交了git diff xxx.xx --查看某文件修改内容git log --查看提交历史,有提交idgit reset commitid/HEAD~1/HEAD^ --回到之前的某个版本,执行该命令后先前的版本在git log命令下不存在了git reflog --查看操作历史 ,可以找到reset前的版本commitid,拿到此id又可以重新回到该版本git checkout xxx.xx --撤销工作区某个文件的修改git reset HEAD xxx.xx --撤销add到暂存区中的文件到返回到工作区git rm xxx.xx --删除文件,如果一个文件已经被提交到版本库,那么你永远不用担心误删,但是要小心,你只能恢复文件到最新版本,你会丢失最近一次提交后你修改的内容。
1.学习git基本命令使用2.学习github基本使用
标签管理:1.创建标签 git tag --创建一个标签 git tag -a -m \"blablabla...\" --给标签添加注释信息 git tag --查看所有标签 git tag --给对应的commitid打标签 git show --查看某标签详细信息 标签总是和某个commit挂钩。如果这个commit既出现在master分支,又出现在dev分支,那么在这两个分支上都可以看到这个标签。2.操作标签 git push origin --可以推送一个本地标签; git push origin --tags --可以推送全部未推送过的本地标签; git tag -d --可以删除一个本地标签; git push origin :refs/tags/ --可以删除一个远程标签。
2018-06-11
学习笔记:
学习目标:
github学习:1.如何参与一个源码项目? 首先fork一个源码项目到自己的github中; 然后在本地git中clone该源码到自己本地电脑; 参与编辑源码后push到自己github中; 向源码拥有者发起一个pull request,当源码拥有者同意了你的pull request后,你就参与到该源码项目中了。
分支管理: 1.创建合并分支: git branch --查看分支 git branch branch-name --创建分支 git checkout branch-name --切换分支 git checkout -b branch-name --创建并切换分支 git merge branch-name --将某分支合并到当前分支中 git branch -d branch-name --删除某分支 2.解决冲突 当Git无法自动合并分支时,就必须首先解决冲突。解决冲突后,再提交,合并完成。 解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。 用git log --graph命令可以看到分支合并图。 3.分支管理策略 git merge --no-ff -m \"merge with no-ff\" dev 合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。 3.BUG分支 修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除; 当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场。 git stash list --查看隐藏区是否有隐藏工作 git stash --隐藏现在分支中未提交的工作 git stash pop --显示隐藏区工作并删除隐藏 4.强行删除分支 如果要丢弃一个没有被合并过的分支,可以通过git branch -D 强行删除。 5.多人协作 多人协作的工作模式通常是这样: 首先,可以试图用git push origin 推送自己的修改; 如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并; 如果合并有冲突,则解决冲突,并在本地提交; 没有冲突或者解决掉冲突后,再用git push origin 推送就能成功! 如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to origin/。 这就是多人协作的工作模式,一旦熟悉了,就非常简单。 查看远程库信息,使用git remote -v; 本地新建的分支如果不推送到远程,对其他人就是不可见的; 从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交; 在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致; 建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name; 从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。
远程仓库:1.创建SSH, $ ssh-keygen -t rsa -C \"youremail@example.com\" 你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。 如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。2.登陆GitHub,打开“Account settings”,“SSH Keys”页面,然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容。为什么GitHub需要SSH Key呢?因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。当然,GitHub允许你添加多个Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的Key都添加到GitHub,就可以在每台电脑上往GitHub推送了。git remote add origin git@github.com:path/repo-name.git --关联一个远程库;git remote rm origin --删除一个名叫origin的远程库git push -u origin master --第一次推送master分支的所有内容;git push origin master --此后,再推送本地master分支内容时省略 -u;git clone git@github.com:path/repo-name.git --从github上克隆一个仓库
0 条评论
下一页