zoukankan      html  css  js  c++  java
  • Git的配置与使用

    Git的配置与使用

    一,未配置过git

    1.1,安装Git

    https://git-for-windows.github.io/

    1,2,鼠标右键点击Git Bash Here

    1.3,输入命令

      1.  cd ~/.ssh/    【如果没有对应的文件夹,则执行  mkdir  ./.ssh】
      2. git config --global user.name "******"
      3. git config --global user.email "*******"
      4. ssh-keygen -t rsa -C "*******" (******* 就是上面输入的邮箱)

    二,已配置过git 

         直接生成:ssh-keygen -t rsa -C ‘邮箱’

    三,git 连接远程仓库

    3.1,本地创建新项目,然后与git关联

     1 #创建新文件夹
     2 mkdir xxx
     3 #进入
     4 cd xxx 
     5 #初始化Git仓库 
     6 git init
     7 #提交改变到缓存
     8 git commit -m 'description'
     9 #本地git仓库关联GitHub仓库 
    10 git remote add origin git@github.com:Test
    11 #提交到GitHub中 
    12 git push -u origin master

    3.2,克隆git仓库的代码

     1  #从Git仓库上克隆项目到本地 
     2  git clone git@ip/域名:项目文件名称 #注意克隆的时候直接在仓库根目录即可, 不用再创建项目根目录 ;
     3  #对比本地仓库与远程仓库的不同
     4  git giff 
     5  #添加文件 
     6  git add .   # 将目录中所有文件添加;
     7  #查询是否成功添加到缓存 
     8  git status
     9  #提交缓存 提交可以写提交描述
    10  git commit -m '提交';
    11  #从远程GitHub仓库拉取 
    12  git pull
    13  #提交到远程GitHub仓库 
    14  git push -u origin master ;
    15  #获取提交日志 
    16  git log;

    四,git常用命令

    4.1,远程仓库操作命令

    1. 克隆仓库:$ git clone git://github.com/jquery/jquery.git
    2. 查看远程仓库:$ git remote -v
    3. 添加远程仓库:$ git remote add [name] [url]
    4. 删除远程仓库:$ git remote rm [name]
    5. 修改远程仓库:$ git remote set-url --push[name][newUrl]
    6. 拉取远程仓库:$ git pull [remoteName] [localBranchName]
    7. 推送远程仓库:$ git push [remoteName] [localBranchName]/git push origin/master

    4.2,分支(branch)操作命令

    1. 查看本地分支:$ git branch
    2. 查看远程分支:$ git branch -r
    3. 创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支
    4. 切换分支:$ git checkout [name]
    5. 创建新分支并立即切换到新分支:$ git checkout -b [name]
    6. 删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项
    7. 合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并
    8. 创建远程分支(本地分支push到远程):$ git push origin [name]
    9. 删除远程分支:$ git push origin :heads/[name]
    10. 提交分支作为远程的分支:$ git push origin test:master    // 提交本地test分支作为远程的master分支 //好像只写这一句,远程的github就会自动创建一个test分支;$ git push origin test:test              // 提交本地test分支作为远程的test分支
    11. 删除远程的分支:git push origin :test              // 刚提交到远程的test将被删除,但是本地还会保存的,不用担心

    4.3,版本(tag)操作命令

    1. 查看版本:$ git tag
    2. 创建版本:$ git tag [name]
    3. 删除版本:$ git tag -d [name]
    4. 查看远程版本:$ git tag -r
    5. 创建远程版本(本地版本push到远程):$ git push origin [name]
    6. 删除远程版本:$ git push origin :refs/tags/[name]

    4.4,子模块(submodule)操作命令

    1. 添加子模块:$ git submodule add [url] [path]
    2. 如:$ git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs
    3. 初始化子模块:$ git submodule init ----只在首次检出仓库时运行一次就行
    4. 更新子模块:$ git submodule update ----每次更新或切换分支后都需要运行一下
    5. 删除子模块:(分4步)
    1)$ git rm --cached [path]
    2) 编辑“.gitmodules”文件,将子模块的相关配置节点删除掉
    3) 编辑“.git/config”文件,将子模块的相关配置节点删除掉
    4) 手动删除子模块残留的目录

    4.5,git忽略文件、文件夹不提交

    在仓库根目录下创建名称为“.gitignore”的文件,写入不需要的文件夹名或文件,每个元素占一行即可,如:

     1 # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
     2 
     3 # dependencies
     4 /node_modules
     5 
     6 # production
     7 /dist
     8 
     9 # misc
    10 .DS_Store
    11 npm-debug.log*
    12 .idea

     4.6,其他操作命令

                 回退到指定版本:git reset --hard 27da9167665

                 拉取指定分支代码:git clone -b dev_zj http://1.1.1.11/service/tmall-service.git

                 服务上未创建分支时提交代码:git push --set-upstream origin test

                 删除本地分支: git branch -d [branchname] 

                 删除远程分支: git push origin --delete [branchname] 

                 更改本地和远程分支的名称:

    1 git branch -m old_branch new_branch # Rename branch locally 
    2 git push origin :old_branch # Delete the old branch 
    3 git push --set-upstream origin new_branch # Push the new branch, set local branch to track the new remote

    五,git配置代码比较与合并工具

    1,下载安装 meld

    Meld官网 点击下载

     

    2,修改.gitconfig文件

    两种方式:

    1.1. 在git bash 命令行使用命令修改

    1.2. 直接修改.gitconfig文件

    1 [diff]
    2     tool = meld
    3 [difftool "meld"]
    4     cmd = ""D:/Meld/Meld.exe" "$LOCAL" "$REMOTE""
    5 [merge]
    6     tool = meld
    7 [mergetool "meld"]
    8     cmd = ""D:/Meld/Meld.exe" "$LOCAL" "$REMOTE""

    3,代码比较与合并的效果图

  • 相关阅读:
    冒泡排序
    MySql
    利用mybatis-generator自动生成代码
    SQL,HQL,CQL,JPQL了解
    mysql中的约束
    详解CRUD?
    什么是数据库ACID?
    建造者模式(Builder Pattern)
    Java中的设计模式
    java中的排序面试题
  • 原文地址:https://www.cnblogs.com/jackson-yqj/p/9635457.html
Copyright © 2011-2022 走看看