GIT笔记

GIT分布式版本管理工具

基本使用流程
  1.在Github官网创建账户
  2.创建远程仓库
  3.本地安装客户端
  4.登录客户端并克隆远程仓库
  5.在本地仓库中存储数据
  6.提交数据并备注信息
  7.推送本地数据到远程仓库

git下载地址:http://git-scm.com/download/win

github客户端地址:http://desktop.github.com

安装成功后,配置path环境变量(安装路径bin目录),使用命令查看是否安装成功:git --version

基本命令操作
  git init //初始化本地仓库
  git add . //添加当前目录文件缓冲
  git mv xxx1 xxx2 //修改文件名称
  git rm xxx //删除文件
  git rm --cached . //撤销缓存区第一次提交文件或删除版本库文件
  git reset HEAD . //撤销缓存区第一次之后的提交
  git checkout --xxx //撤销本地文件的修改
  git status //查看状态
  git commit -m '备注' //提交
  git commit --amend //修改最新一次提交,修改备注
  git push //推送到仓库
  git pull //从远程仓库拉取数据
  git clone //从远程仓库拷贝数据(项目)
  git log --pretty=oneline //查看日志
  git reflog //查看变动日志
  git reset --hard xxx(版本唯一标识号) //切换历史版本
  git branch //查看分支

初次使用配置
  git init(生成.git仓库)

仓库配置(.git/config文件)
  git config user.name 'chenyongsai'
  git config user.email 'chenyongsai@163.com'

全局配置(用户目录生成.gitconfig文件)
  git config --global user.name 'chenyongsai'
  git config --global user.email 'chenyongsai@163.com'

忽略添加文件配置
  创建文件:.gitignore
  在文件里配置忽略文件的路径
  文件:*.txt !a.txt 目录:/xxx1/*
  查看状态:不能显示文件夹里面的文件

分支
  查看分支:git branch 或 git branch -a //-a参数:查看本地以及包括远程仓库分支
  默认主线:git checkout master
  创建分支:git branch xxx(分支名称)
  进入分支:git checkout xxx(分支名称)
  删除分支:git branch -d xxx(分支名称) //分支如果未合并,需要强制删除:git branch -D xxx
  快捷切换:git checkout -b xxx(分支名称) //创建分支并同时切换到新分支

合并分支
  切到换主线下:git checkout master
  合并哪个分支:git merge xxx(分支名称)
  查看成功合并:git branch --merged 或 git branch --no-merged
  优化分支合并:git rebase master //合并分支之前操作,相当于先更新主线最新代码

远程仓库连接
  查看远程连接配置:git remote -v
  添加远程仓库配置:git remote add xxx(连接仓库配置名称) https://github.com/xxxx/xxxxx.git(远程仓库地址)

  本地仓库推送远程:

    git push -u xxx(连接仓库配置名称) xxx(master主线)

    或 git push https://github.com/xxxx/xxxxx.git(远程仓库地址) xxx(master主线)
  本地拉取远程仓库:

    git pull -u xxx(连接仓库配置名称) xxx(master主线)

    或 git pull https://github.com/xxxx/xxxxx.git(远程仓库地址) xxx(master主线)
  远程分支连接配置:git push --set-upstream origin(连接仓库配置名称) xxx(远程分支名称) //非master主线
  删除本地远程配置:git remote remove xxx(连接仓库名称)
  删除远程仓库分支:git push origin --delete xxx(远程分支名称)
  PS:第一次远程连接仓库推送需要使用 -u 参数
  PS:已建立连接远程仓库后,拉取更新数据只需要 git pull

克隆远程仓库:
  git clone https://github.com/xxxx/xxxxx.git(远程仓库地址)
  git clone git@github.com:chenyongsai/xxx.git(远程仓库地址)

国内远程仓库:http://git.oschina.net

团队合作:
  github托管管理添加成员,发送邀请连接,开发成员登录git托管网站,接收邀请,即可clone项目团队协作开发
  远程仓库项目管理添加成员权限名单(校验github账户) PS:可以配置SSH密钥,不需要输入账户

密钥生成:
  ssh-keygen
  测试是否可以通信成功:ssh -T git@github.com
  公钥:id_rsa.pub
  缓存:known_hosts //如果默认连接不上,有可能因为缓存损坏,清空缓存重新连接
  PS:注意公钥复制过程中出现的空格字符问题

命令快捷别名:
  全局配置:git config --global alias.a add //git a . 等同于 git add .
  系统配置:.bash_profile //仓库目录设置别名映射关系
  如:alias gs="git status"
  alias gc="git commit -m "
  alias gl="git log "
  alias gb="git branch"
  alias ga="git add ."
  alias go="gi checkout"

分支临时缓存区:
  git stash //但某一功能开发进行中,一部分代码已进入缓存区,需要切换分支时,需要建立临时缓存区
  git status list //分支临时缓存区列表
  git stash apply //恢复缓存区
  git stash drop xxxx(分支临时缓存区标识=stash@{0}{1}...。0:最近存储)

标签:
  git tag //查看标签列表
  git tag xxx(标签名:v1.0) //添加标签

生成压缩包:
  git archive master --prefix='目录/' --forma=zip > xxx.zip(压缩名称)

 

posted @ 2018-09-25 21:31  chenyongsai  阅读(118)  评论(0编辑  收藏  举报