GIT常用操作整理

GIT常用操作学习

最近在学习GI T版本控制工具,关于GIT的介绍就不做过多阐述,下面将自己平时经常用到的操作,进行一些整理。

  • 1.首先需要创建一个版本库:

     mkdir myreproistory
    
  • 2.将myreproistory文件夹初始化可以管理的仓库

     git init
    
  • 3.将readme.txt文件添加到仓库

     git add readme.txt
    
  • 4.把文件提交到仓库

     git commit -m "第一次提交readme.txt文件"
    
  • 5.查看仓库当前的状态

     git status
    
  • 6.查看readme.txt文件修改情况

     git diff readme.txt
    
  • 7.查看文件提交记录

     git log
     git log --pretty=oneline  查看最近一次提交文件的记录
    
  • 8.HEAD表示当前版本,HEAD^表示上一版本

  • 9.回退版本

     git reset --hard HEAD^
     git reset --hard [版本号]
    
  • 10.查看历史版本

     git reflog
    
  • 11.撤销修改

     git checkout -- readme.txt         把readme.txt文件在工作区的修改全部撤销
              1.自修改后还没有被放到暂存区,现在撤销修改就回到和版本库一模一样的状态
              2.readme.txt已经添加到暂存区后,又做了修改,现在撤销修改就回到添加到暂存区后的状态
    
  • 12.删除文件:

     把test.txt文件删除了: rm test.txt
         1.要从版本库中删除该文件,使用:git rm
         2.要是删错了,因为版本库中还存在呢,只需要使用:git checkout --test.txt
     git checkout操作其实是用版本库里的版本替换工作区的版本,
     但是注意:从来没有被添加到版本库的文件,如果被删除了,是无法恢复的!
    
  • 13.远程仓库,以GitHub为例:

          1.创建SSH Key:在用户主目录下,看是否有id_rsa(私钥)和id_rsa.pub(公钥)文件,
          如果没有,打开git bash,输入命令创建SSH Key:ssh-keygen -t rsa -C “邮箱账号”
          2.登录GitHub,打开打开“Account settings”,“SSH Keys”页面:
          然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容
          3.创建自己的远程仓库:myrepository
          4.在自己本地仓库的文件夹下运行:git remote add origin git@github.com:[自己GitHub账户名]/[本地仓库名].git
          5.添加后,本地的远程仓库的名字就是origin,这是默认叫法
          6.将本地库的内容推送到远程:git push(如果没有创建分支,默认是推送到主分支上master的)
             第一次推送时:git push -u
             从现在起,只要本地做了修改,就可以通过命令推送到GitHub上:git push origin master
             (第一次使用git的clone或者push命令连接远程仓库时,会得到一个警告,输入yes即可)
          7.从远程仓库克隆一个到本地仓库:git clone git@github.com:[自己GitHub账户名]/[本地仓库名].git
    
  • 14.分支管理

          1.创建并切换到分支:git checkout -b dev 或者:git switch -c dev   相当于:git branch dev和git checkout dev两步操作
          2.查看分支:git branch(*表示当前所属的分支)
          3.切换到主分支:git checkout master 或者:git switch master
          4.将dev分支合并到主分支:git merge dev
          5.删除分支:git branch -d dev
    
  • 15.解决冲突

          当dev分支上对readme.txt文件进行了修改并提交,master主分支上也对readme.txt文件进行了修改并提交
          将dev分支合并到主分支上时,会提示有冲突文件,必须手动解决完冲突后才能提交
          可以先使用git status查看冲突的文件,然后提交完再合并
    
  • 16.为了查看每次合并后,能看出来曾经做过合并的历史信息,需要使用命令:git merge --no-ff -m “合并时的备注信息” dev

  • 17.bug分支

          当工作没有完成时,没法提交,但是还需要干别的事情,可以使用:git stash 将目前的工作储藏;
          当别的工作完成后,想切回之前没有完成的工作,
             先使用:git stash list 查看,然后一是使用:git stash apply 恢复,但是恢复后,stash内容并不删除,需要用:git stash drop来删除
             另一种方式是用git stash pop,恢复的同时把stash内容也删了
          可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令:git stash apply stash@{[版本号]}
    
  • 18.如果要丢弃一个没有被合并过的分支,可以通过:git branch -D 强行删除

  • 19.推送分支

          推送分支就是把该分支的所有本地提交推送到远程仓库,推送时要指定本地分支,这样git就会把该分支推送到远程库对应的远程分支上
          查看远程库信息,使用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,如果有冲突,要先处理冲突。
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值