Git常用命令与简单介绍

来源:互联网 发布:mac导出iphone视频 编辑:程序博客网 时间:2024/05/29 09:16

Git的简单配置

  • 查看本地Git安装目录

    run: which -a git /usr/bin/git /usr/local/git/bin/git
  • 查看当前Git版本

    run: git --versiongit version 1.9.3 (Apple Git-50)
  • 切换Git版本

    通过在用户目录下的 .bashz_profile 文件增加环境变量,让系统优先使用我们要切换的Git。

    //编辑文件run:  vi .bashz_profile//添加内容add:  export PATH=/usr/local/git/bin:$PATH//重新载入run:  source .bash_profile//查看当前Git版本run: git --versiongit versin 2.2.1

基本配置

  • 设置用户名与Email

    run: git config --global user.name elirun: git config --global user.email 827887@qq.com
  • 设置Git的默认编译器

    通常情况下Git默认使用的编译器都是Vi或Vim,如果有其他偏好可以进行设置。

    run: gie config --global core.editor 编译器
  • 差异分析工具

    在解决合并冲突时使用的差异分析工具。
    Git可以理解 kdiff3,tkdiff,meld,xxdiff,emerge,vimdiff,gvimdiff,ecmerge,和 opendiff 等合并工具的输出信息。也可以指定使用自己开发的工具。

    run: git config --global merge.tool vimdiff
  • 查看配置信息

    有时候会看到重复的变量名,那就说明它们来自不同的配置文件(比如 /etc/gitconfig 和 ~/.gitconfig),不过最终 Git 实际采用的是最后一个。

    run: git config --listhttp.postbuffer=2Muser.name=eliuser.email=827887@qq.com

基础操作

  • 创建与使用仓库

    • 创建仓库

      Git 的很多命令都需要在 Git 的仓库中运行,所以创建Git仓库在使用Git的第一步。

      run: git init
    • 使用已存在的仓库

      run: git init name
  • 克隆项目

    拷贝一个Git仓库到本地。
    如果与他人合作一个项目,或者是想复制一个项目就可以使用克隆命令

    run: git clone [url] [path]//url 想要复制的项目地址//path 保存到本地的路径
  • 基本快照

    • git add 将文件添加到缓存。

      run: git add .run: git add file file ...
    • git status 查看项目的当前状态

      run: git status -s
    • git diff 查看git status的结果详细信息

      run: git diff 没有缓存的改动run: git diff --cached 已缓存的改动run: git diff HEAD 已缓存的与未缓存的所有改动run: git diff --stat 摘要
    • git commit 将缓存区内容添加到仓库中

      run: git commit -m "add file"// -m 注释信息// -a 当没有使用git add进行添加缓存时,-a参数可以跳过这一步。

    当不使用-m参数填写此次commit的注释时,Git会自动打开关联的编译器让用户进行填写

    • git reset HEAD 取消缓存的修改

      run: git reset HEAD//取消所有的缓存run: git reset HEAD -- 文件名//取消指定文件的缓存
    • git rm 删除文件

      run: git rm 文件名//默认情况下rm命令会将工作区与缓存区的指定文件都删除。//--cached 只删除缓存区,保留工作区
    • git mv 改名

      run: git mv 原文件 修改后的

分支管理

  • 分支的创建、删除

    run: git branch (branch name)run: git branch//列出分支run: git branch -d (branch name)//删除分支
  • 切换分支

    run: git checkout (branch name)run: git checkut -b (branch name)//创建并切换到新分支
  • 合并分支

    run: git mergerun: git merge [alias]/[branch]// 合并两个分支
  • 查看提交历史

    run: git log    --oneline //查看简介版    --graph   //查看历史中何时出现了分支、合并。    --reverse //查看何时工作分叉、何时归并。    --author  //查看指定用户的提交日志    --no-maerges //隐藏合并信息    --decorate //查看标签
  • 标签

    如果你达到一个重要的阶段,并希望永远记住那个特别的提交快照,你可以使用 git tag 给它打上标签。

    run: git tag -a v1.0run: git tag run: git tag -s <tagname> -m <annotate>//查看所有标签run: git tag -a v1.1 缓存ID//追加标签

仓库管理

  • 添加远程仓库与查看仓库

    run: git remote add [shortname] [url]run: git remote //查看当前仓库
  • 生成GitHub的SSH Key

    完成后会在~/下生成.ssh文件夹,
    打开id_rsa.pub,复制里面的key,到github -> Account Settings,左边选择SSH Keys,粘贴。

    run: ssh-keygen -t rsa -C <email>run: cd ~/.sshrun: cat id_rsa.pubssh -T "git@github.com"//验证是否成功
  • 提取远程仓库

    Git有两种方式提取远程仓库的更新

    1. 从远程仓库下载新分支与数据

      run: git fetch

      该命令执行完后需要执行git merge 远程分支到你所在的分支。

    2. 拉去远端仓库并且合并到当前分支

      run: git pull

      该命令就是在执行 git fetch 之后紧接着执行 git merge 远程分支到你所在的任意分支。

  • 推送到远程仓库

    run: git push [仓库名] [分支名]

    以上命令将你的 [branch] 分支推送成为 [alias] 远程仓库上的 [branch] 分支。

  • 删除远程仓库

    run: git remote rm  [仓库名]

Git 服务器搭建

  1. 安装Git

    run: yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-develrun: yum install git
  2. 创建Git运行用户与用户组

    run: groupadd gitrun: adduser git -g git
  3. 创建证书登陆

    run: cd /home/git/run: mkdir .sshrun: chmod 700 .sshrun: touch .ssh/authorized_keysrun: chmod 600 .ssh/authorized_keys
  4. 初始化Git仓库

    run: cd /homerun: mkdir gitreporun: chown git:git gitrepo/run: cd gitreporun: git init --bare <reponame>.gitrun: chown -R git:git w3cschoolcc.gitrun: git:x:503:503::/home/git:/bin/bashrun: git:x:503:503::/home/git:/sbin/nologin//禁用 git 用户通过shell登录,可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
0 0