git操作指南

git config --global user.name "liurong"
git config --global user.adress "liurong_scut@sina.com" //添加全局变量,用户名和密码
git config --list //查看全局变量的信息
git init         //进入要创建代码仓库的目录,就会生成.git 隐藏文件
git init --bare  //在当前的目录创建代码仓库
git status   //进入当前的目录查看状态
git add fileName //添加文件到仓库,但是还没有提交
git commit -m "这里是提交文件时候的注释内容    "
git add .   //当前的目录文件全部提交到缓存区,但是还没有真正地提交
git commit -m "add two new File Demo.java Emp.java"
git commit -a -m "change Emp.java"


git diff [fileName] //查看当前文件的修改的地方
git checkout fileName //撤销修改
git reset fileName    //要是文件已经添加,则不能撤销修改,只能使用reset命令先 取消添加,再撤销修改


git log //查看提交的记录
git log id -1 //查看某天id记录,-1表示只查看一行
git log id -1 -p //查看这条记录到底修改了什么内容


git branch  //查看分支
git branch version1.0  //建立version1.0的分支
git checkout version1.0 //切换到version1.0 的分支上
git branch -D version1.0  //删除version1.0的分支
//下面的两条命令可以合并分支
git checkout master
git merge version1.0


git clone https://github.com/example/test.git  //后面的网址是远程版本库的git地址
git put origin master    //origin指的是远程版本库的地址,master指的是同步到哪一个分支


git fetch origin master  //同步远程的代码到本地,不过同步下来的代码不会合并到任何分支,而是会存在一个origin/master 分支上
git diff origin/master   //查看区别

git pull origin master   //以上两个命令的合并,从远程代码库获取最新的代码并合并到本地


/**
    工作区(用户代买的文件夹目录)
      git add 命令是工作区中的文件保存到了暂存区,原来的工作区的文件删除
      暂存区中的代码只是提供给了用户一个临时保存文件的地方,可以使用reset 命令使文件恢复到工作区
      git 提交的是暂存区内容,工作区中的内容提交
      
**/

git log --pretty=oneline

master 分支存在的是HEAD 指针,表示是使用的当前的版本

git reset --hard HEAD~1 //回退到上个版本

git reflog  //查看所有的提交点,包括删除的

git reset --hard 7fe12fb

git checkout -- Hello.java  //恢复删除的Hello.java 文件,此时适用于还没有提交文件到master ,若是已经提交文件,则使用如下命令:
git reset --hard id(12sdf5)  //回退到特定的版本号

//生成公钥和私钥
ssh-keygen -t rsa -C "1069919773@qq.com"


//以下两部为将本地的代码同步到远程仓库
git remote add origin git@github.com:liurongdev/javaDemo.git
git push -u origin master  

git remote rm origin //将远程仓库删除


/**
    git分支管理
    不要在master分支进行开发
**/

git branch  //查看分支   *表示的是正在使用的分支
git branch dev //创建分支 dev
git checkout dev //切换到dev分支

/**    
    以下为删除分支的两种方法
**/
git push origin --delete dev
git push origin :dev  //执行一个空的分支  删除远程分支 dev


/**
    两个分支同时修改了同一个文件,可能产生冲突
**/


git checkout -b dev  //创建,并切换到dev分支


git log --graph --pretty=oneline


//使用--no-ff模式可以在合并的时候产生新的提交点
git merge --no-ff -m "不适用fast-farword合并模式,这样合并的话可以记录合并信息" dev

/**
    git支持暂挂功能,bug分支
**/


git stash  //挂起工作区
git stash --list  //查看挂起的工作区
git stash apply //回复挂起的工作区
git stash drop  //删除临时的挂起的工作区


git stash pop //从暂挂区恢复工作区并删除暂挂区,此命令先当于 git stash apply ,git stash drop 两个命令

/**
    feature分支
**/
git branch -D dev  //强制删除没有合并的分支

git diff master > patch  //在dev分支上输入此命令,可以得到一个新的文件,保存master和dev分支的不同点

git checkout master 
git apply patch     //合并分支,可以使用文件patch


/**
    format-patch 补丁
    标准格式的补丁
**/

git format-patch -m master   //会生成补丁文件

git checkout master 
git am 0001-change-Admin.java.patch  //应用补丁文件

git checkout -b lr origin/dev    //穿件本地的lr分支,把origin/dev分支的代码复制到次方目录里面


git branch --set-upstream-to=origin/dev lr  //使用此命令是远程仓库的dev分支和本地的lr分支关联起来
git pull    //抓取代码到lr分支


git branch --set-upstream-to=origin/lr dev


/**
    git标签管理
                            标签
    第一个提交点
    第二个提交点                          版本1.0
    第三个提交点              
    第四个提交点                          版本2.0
    第五个提交点
    第六个提交点                           版本3.0
    
    
    以后回退直接回退到对应的标签,不用在回到到一定的id
**/

git tag l.0  //穿件当前的版本为1.0标签
git tag     //查看所有的标签
git log --pretty=oneline  --abbrev-commit  //简化显示所有的提交记录
git tag v0.1 aeaef28    //根据id设置标签
git show v0.1            //查看标签
git tag v1.2 -m "这是标签的注释信息"    


//所有的标签都可以提交到github服务器上面
git push origin v0.1   //比较标签到服务器

git push origin --tags  //提交全部的标签

git tag -d 1.0  //删除本地标签


git push origin :refs/tags/1.0 //删除远程服务器的标签


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值