scuess 发表于 2018-9-17 12:19:43

git部署及应用

  IT环境部署 && 自动化
  操作系统安装          COBBLER
  服务部署            SALTSTACK
  应用代码部署          saltstack && shell
  监控配置            zabbix
  加入运维集群          LVS && haproxy
  安装部署git
  # yum install git -y
  设置本地的用户名和邮箱
  # git config --global user.name "chenjisong"
  # git config --global user.email "406564728@qq.com"
  # git config --global color.ui true
  # git config --list
  user.name=chenjisong
  user.email=406564728@qq.com
  color.ui=true
  创建一个版本库:
  # mkdir oldboy
  # cd oldboy/
  # git init
  Initialized empty Git repository in /root/oldboy/.git/
  # echo "1 hehe" > readme.txt
  # cat readme.txt
  1 hehe
  # git add readme.txt                      ---添加至版本库
  # git commit -m "the first commit"   ---提交
  # cat deploy.sh
  #!/bin/bash
  echo hehe
  # git add deploy.sh
  # git commit -m "2th commit"
  # git log    -----查看提交记录
  # cat readme.txt      -----加了一行
  1 hehe
  2 haha
  # git status         再次查看状态,提示文件改变了
  # git diff readme.txt         git diff对比两次文件修改之处
  diff --git a/readme.txt b/readme.txt
  index 408e625..5293fff 100644
  --- a/readme.txt
  +++ b/readme.txt
  @@ -1 +1,2 @@
  1 hehe
  +2 haha
  # git add readme.txt
  # git commit -m "add 2haha"
   add 2haha
  1 files changed, 1 insertions(+), 0 deletions(-)
  # git log         ----查看提交记录
  commit f951bc28b0d2c55d320983c76bcd0523f2101973
  Author: chenjisong
  Date:   Fri Nov 27 14:23:02 2015 +0800
  add 2haha
  commit 44c16df44ab14f8769569bd31cc586256f579911
  Author: chenjisong
  Date:   Fri Nov 27 14:18:38 2015 +0800
  2th commit
  commit fea2e2d32e1684523684c6acd83ba0dfdc3b4d56
  Author: chenjisong
  Date:   Fri Nov 27 14:16:12 2015 +0800
  the first commit
  # git reset --hard HEAD^    git reset版本回退命令   HEAD^表示上一版本
  HEAD is now at 44c16df 2th commit
  # git reflog                git reflog列出每一个版本
  44c16df HEAD@{0}: HEAD^: updating HEAD
  f951bc2 HEAD@{1}: commit: add 2haha
  44c16df HEAD@{2}: commit: 2th commit
  fea2e2d HEAD@{3}: commit (initial): the first commit
  # git reset --hard fea2e2d   后面直接接回退的版本则OK
  HEAD is now at fea2e2d the first commit
  # ll                  ---此处没有deploy.sh文件了
  总用量 4
  -rw-r--r-- 1 root root 7 11月 27 14:26 readme.txt
  # cat readme.txt
  1 hehe
  总结:
  1 git add readme.txt                           git add加入到暂存区
  2 git commit -m "add 2haha"                  git commit 提交到工作区
  3 git log                                    git log 查看提交日志
  4 git reset --hard HRAD^                     git reset回退版本
  5 git reflog                                 git reflog查看历史提交记录

  6 git reset --hard fea2e2d                     git reset根据commit>  ####################################################################################################
  # cat readme.txt
  1 hehe
  2 wo shi hehe                  ---新加的一行
  # git commit -m "add 2"
  # On branch master
  # Changed but not updated:
  #   (use "git add ..." to update what will be committed)
  #   (use "git checkout -- ..." to discard changes in working directory)
  #
  #       modified:   readme.txt
  #
  no changes added to commit (use "git add" and/or "git commit -a")   没有任何的改变去提交
  注意:必须先提交到暂存区,然后才能提交到工作区
  # git add readme.txt         ----先提交到暂存区
  # git commit -m "add 2"      ----提交到工作区才能成功
   add 2
  1 files changed, 1 insertions(+), 0 deletions(-)
  # cat readme.txt
  1 hehe
  2 wo shi hehe
  3 hehe hehe                      ---新加的一行
  # vim readme.txt
  1 hehe
  2 wo shi hehe
  3 hehe hehe
  4 haha                                    新加的一行
  # git checkout readme.txt-git checkout,对刚修改,暂未提交的文件回退
  # cat readme.txt
  1 hehe
  2 wo shi hehe
  3 hehe hehe
  远程仓库:
  # git remote add origin git@github.com:chenjisong/test.git
  -----添加至远程版本库
  # cat .git/config
  
  repositoryformatversion = 0
  filemode = true
  bare = false
  logallrefupdates = true
  
  url = git@github.com:chenjisong/test.git
  fetch = +refs/heads/*:refs/remotes/origin/*
  73git push -u origin master
  74git pull
  75git pull origin master             ----先pull下来
  76ls -a
  77git push -u origin master          ----然后再push上去
  # git clone git@github.com:chenjisong/test.git远端克隆别人的东西
  Initialized empty Git repository in /tmp/test/.git/
  remote: Counting objects: 16, done.
  remote: Compressing objects: 100% (8/8), done.
  remote: Total 16 (delta 1), reused 12 (delta 1), pack-reused 0
  Receiving objects: 100% (16/16), 5.43 KiB, done.
  Resolving deltas: 100% (1/1), done.
  branch管理
  # git branch dev
  # git checkout dev
  Switched to branch 'dev'
  # git branch
  * dev
  master
  合并分支:如果要将dev与master进行合并,首先切换到master分支
  # git checkout master
  Switched to branch 'master'
  # git merge dev
  Updating 5dfef63..ae15e52
  Fast-forward
  dev.txt |    1 +
  1 files changed, 1 insertions(+), 0 deletions(-)
  create mode 100644 dev.txt
  # ll
  总用量 24
  -rw-r--r-- 1 root root    13 11月 27 15:31 dev.txt       -----dev分支的内容,已合并
  -rw-r--r-- 1 root root 11358 11月 27 15:10 LICENSE
  -rw-r--r-- 1 root root    12 11月 27 15:10 README.md
  -rw-r--r-- 1 root root    33 11月 27 14:49 readme.txt
  # git branch
  dev
  * master
  # git branch -d dev         -d   删除分支
  # git checkout -b test      -b   创建分支
  # git tag v1.0               git tag 打标签
  # git tag
  v1.0

页: [1]
查看完整版本: git部署及应用