Git 学习笔记
2018-03-03 14:50
246 查看
Git常用指令
适用于ubantu系统1.安装git
sudo apt-get install git
2.配置git
git config --global user.name "Your Name" git config --global user.email "email@example.com"
3.创建版本库
git init #在当前目录下创建仓库
4.添加文件到git仓库
git add readme.txt git commit -m "write a readme file"
5.查看工作区的状态
git status
6.查看修改内容
git diff
7.查看提交历史
git log git log --pretty=oneline #简介的信息
8.版本回退
git reflog #最好先git log/reflog 查看commitID git reset --hard commitID git reset --hard HEAD^ #回退到上一个版本
9.查看工作区和版本库里面最新版本的区别
git diffHEAD -- readme.txt
10.丢弃工作区的修改
git checkout --readme.txt
11.丢弃暂存区的修改
git reset HEAD readme.txt git checkout --readme.txt
12.丢弃版本库的修改
参考第8点
13.删除版本库中的文件
git rm readme.txt
14.误删工作区的文件要还原
git checkout --readme.txt git checkout其实是用版本库里的版本替换工作区的版本
15.创建SSH Key的秘钥对
$ ssh-keygen -t rsa -C "youremail@example.com"
然后在home目录下进入.ssh文件
id_rsa为私钥(不能泄露) id_ras.pub 为公钥
具体添加到github操作在远程仓库那一节
16.本地仓库关联远程库
git remote add origin git@github.com:cyw350446550/learngit.git git push -u origin master #第一次推送master分支的所有内容 git push origin master#推送最新修改
17.克隆远程库到本地
git clone https://github.com/michaelliao/gitskills.git #https速度比较慢 git clone git@github.com:cyw350446550/learngit.git#克隆在当前目录下
18.创建与合并分支
git branch dev #创建分支 git checkout dev#切换分支 git checkout -b dev#创建+切换 #现在就在dev分支上 git add readme.txt git commit -m '..." #提交之后切回到master分支 git checkout master #合并删除分支 git merge dev #快进模式 Fast-forward git branch -d dev
19.解决冲突
#当分支与master都有新的提交时 git merge dev #报错(当前位置在master) #在这之后只能手动修改文件(其中有提示不同分支的代码区别) #提交之后删除dev
20.Bug分支
#假设原本在dev分支上正常工作QWE #现在到master下修复bug,就在master中创建临时分支 git checkout master git chekout -b issue git add readme.txt git commit -m "..." git checkout master git merge --no-ff -m "..." issue git branch -d issue #至此bug修复完毕,继续原本的工作QWE git checkout dev git stash pop
21.强行删除分支
git branch -D dev#丢弃没有合并过的分支 git branch -d dev#丢弃已经合并过的分支
22.推送分支
git remote -v #查看远程信息库 git push origin dev
23.多人协作
git clone git@github.com:cyw350446550/learngit.git git checkout -b dev origin/dev vim readme.txt git add readme.txt git commit -m "..." git push origin dev #dev分支push到远程对应的dev分支 如果你的小伙伴的最新提交和你试图推送的提交有冲突 git pull #报错提示输入下一条指令 git branch git pull #如果git pull提示“no tracking information” #则说明本地分支和远程分支的链接关系没有创建 #用命令git branch --set-upstream branch-name origin/branch-name #手动修改文件、提交、再push
24.理解概念
a.关于工作区、stage暂存区、分支等关系
b.HEAD指针指向分支(指向指针的指针)
master/dev指向文件
dev合并到master 就是把master指向dev的指向文件
删除dev分支,就是删除dev指针
25.常见问题解决
git pull 遇到fatal: refusing to merge unrelated histories
git pull originName branchName --allow-unrelated-histories
以上图文都来源于廖雪峰的官方网站:
[]https://www.liaoxuefeng.com/]
相关文章推荐
- 17.3.02 Git学习笔记
- Git GUI 学习笔记
- git学习笔记
- Git学习笔记1--Git原理简介
- git下载速度太慢【学习笔记】
- Git学习笔记(六) Git检出
- Git学习笔记(7)- GitHub的使用
- 学习笔记 2016/1/27 how to use git (2)
- Git学习笔记
- Git学习笔记
- Git 学习笔记
- Git 学习笔记
- Git学习笔记
- Git学习笔记
- Git学习笔记
- 《Pro Git 2》学习笔记_Chapter 10_Git Objects
- Git&GitHub学习笔记之(一)GitHub简单操作
- git学习笔记整理-14-查看历史提交信息:git log详解
- git-分布式版本控制系统学习笔记