1、安装git
git config --global user.name 'XXX'
git config --global user.email 'XXX'
2、创建仓库(repository)---暂存区
mkidir learngit //自定义文件夹
cd learngit
touch test.md //创建test.md文件pwd //显示当前目录3、常用
git init //初始化代码仓库
git add learngit.txt //把文件添加到暂存区
git commit -m 'add a file' //把文件提交到暂存区
git status //查看工作区状态
git diff //查看文件修改内容
git log //查看提交历史
git log --pretty=oneline //单行显示
git reset --hard HEAD^ //回退到上一个版本,其中(HEAD^^(上上版本),HEAD~100(往上100个版本))
git push -f origin master // 强制提交
commit id //(版本号) 可回到指定版本
git reflog //查看历史命令
删除远程连接:
git remote rm origin
其中说明【
工作区(Working Directory)--- 本地文件夹
版本库(Repository) #.git文件夹 ---暂存区
stage(index) 暂存区
master Git自动创建的分支
HEAD 指针
】
git diff HEAD -- <file> //查看工作区和版本库里最新版本的区别
git checkout -- <file> //用版本库的版本替换工作区的版本,无论是工作区的修改还是删除,
都可以'一键还原', 让文件回到最近一次git commit或git add时的状态
git checkout -- file命令中的--很重要,没有--,就变成了“切换到另一个分支”的命令
git reset HEAD <file> //把暂存区的修改撤销掉,重新放回工作区。
git rm <file> //删除文件,若文件已提交到版本库,不用担心误删,但是只能恢复文件到最新版本4. 远程仓库
git remote add origin http....git //添加后,远程库的名字就是origin,这是Git默认的叫法,
也可以改成别的,但是origin这个名字一看就知道是远程库。
git push -u origin master // 把本地库推送到远程库上,用git push命令,实际上是把当前分
支master推送到远程。由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但
会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支
关联起来,在以后的推送或者拉取时就可以简化命令。
将代码push到远程新建的git仓库
将git pull origin master 改为
git pull origin master --allow-unrelated-histories5、分支
git checkout -b dev //创建并切换分支,git checkout 加 -b 相当于git branch dev
和git checkout dev两条命令
git branch //列出所有分支,当前分支前面会标一个*号
git branch <name> //创建分支
git checkout <name> //切换分支
// 克隆规定分支代码: git clone -b 分支名 http://git....git
如: git clone -b V2 http://git.awyun.net/fliu2476/zillionaire.git
git merge <name> //合并某个分支到当前分支
git branch -d <name> //合并后删除分支
git switch -c dev //创建并切换到新分支
git switch <name> //切换分支
git merge --no-ff -m 'message' dev //禁用Fast forward合并dev分支。合并分支时,加
上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,
而fast forward合并就看不出来曾经做过合并。
git stash //隐藏当前工作现场,等恢复后继续工作
git stash list //查看stash记录
git stash apply //仅恢复现场,不删除stash内容
git stash drop //删除stash内容
git stash pop //恢复现场的同时删除stash内容
git branch -D <name> //强行删除某个未合并的分支//开发新feature最好新建一个分支
git remote //查看远程仓库
git remote -v //查看远程库详细信息
git pull //抓取远程提交
git push origin master
git push origin dev
git checkout -b branch-name origin/branch-name //在本地创建和远程分支对应的分支
git branch --set-upstream branch-name origin/branch-name //建立本地分支和远程分支的关联6、其他---标签
git tag v1.0 //给当前分支最新的commit打标签
git tag -a v0.1 -m 'version 0.1 released' 3628164 //-a指定标签名,-m指定说明文字
git tag -s <tagname> -m 'blabla' //可以用PGP签名标签
git tag //查看所有标签
git show v1.0 //查看标签信息
git tag -d v0.1 //删除标签
git push origin <tagname> //推送某个标签到远程
git push origin --tags //推送所有尚未推送的本地标签test
git init
git remote add origin http
git pull
git pull http... master
git checkout -b dev
git add .
git commit -m
git push origin dev github避免重复输入用户名密码
www.dazhuanlan.com/2019/11/05/…