zoukankan      html  css  js  c++  java
  • git 笔记/常用指令

    Git比其他版本控制系统设计得优秀,因为Git跟踪并管理的是修改,而非文件。
    创建版本库
    1、版本库又名仓库,英文名repository,你可以简单理解成一个目录,这个目录里面的所有文件都可以被Git管理起来,每个文件的修改、删除,Git都能跟踪,以便任何时刻都可以追踪历史,或者在将来某个时刻可以“还原”。
    所以,创建一个版本库非常简单,首先,选择一个合适的地方,创建一个空目录:
    $ mkdir learngit $ cd learngit $ pwd /Users/michael/learngit
    pwd命令用于显示当前目录。在我的Mac上,这个仓库位于/Users/michael/learngit。
    如果你使用Windows系统,为了避免遇到各种莫名其妙的问题,请确保目录名(包括父目录)不包含中文。
    git --version
    查看当前git版本
    git init
    把当前目录变成Git可以管理的仓库
    git config
    配置个人的用户名称和电子邮件地址:
    git config --global user.name "runoob" git config --global user.email test@runoob.com
    git config --list
    查看已有的配置信息
    也可以直接查阅某个环境变量的设定,只要把特定的名字跟在后面即可,git config user.name
    git clone <版本库的网址>
    将存储库克隆到新目录中,该命令会在本地主机生成一个目录,与远程主机的版本库同名。如果要指定不同的目录名,可以将目录名作为git clone命令的第二个参数,git clone <版本库的网址> <本地目录名>
    git branch
    查看本地分支
    git branch -a
    查询当前所有分支,包括本地分支和远程分支
    git branch -v
    查看各个分支最后一次提交
    git branch –merged
    查看哪些分支合并入当前分支
    git branch –no-merged
    查看哪些分支未合并入当前分支
    git branch newBranchName
    创建一个新的分支
    git checkout branchName
    切换分支
     git checkout -b branchName
    创建并切换分支
    git merge branchName
    把branchName合并到当前分支
    git rebase master
    更新master主线上的东西到当前分支上
    git merge和rebase的区别
    假设现在有两个分支 A B
    1. 在B分支上执行 git merge A 后 A就被合到B上了
    2. 在B分支上执行 git rebase A 后,效果与merge是一样的,但是 A就没有了,两个分支就合在一起了。
    git push origin branchName
    将本地分支推送到Git服务器,生成远程分支。
    git fetch origin branchName:branchName
    更新远程库到本地
    或者先切到本地分支内,执行git fetch origin branchName即可。
    git merge origin/mybranch
    取远程分支合并到本地
    git checkout -b mybranch origin/mybranch
    取远程分支并分化一个新分支
    git pull
    抓取远程仓库所有分支更新并合并到本地
    git pull origin master
    抓取远程仓库指定分支更新并合并到本地
    git log
    列出该文件的历史提交版本,能看到提交的版本号和提交的注释信息,以便确定要回退到哪个版本。
    git log --pretty=oneline 输出简化信息
    git reflog
    记录每一次命令,查看命令历史,以便确定要回到未来的哪个版本。
    git diff
    对比该文件两个版本的不同。
    git status
    查看当前分支状态
    git add fileName
    告诉Git,把文件添加到仓库,实际上就是把文件修改添加到暂存区
    git add . 可添加全部修改文件
    git commit -a
    git commit -m "备注信息",实际上就是把暂存区的所有内容提交到当前分支。
    提交
    git reset --hard HEAD^
    HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
    git reset --hard commitId
    可以指定回到未来的某个版本,版本号没必要写全,前几位就可以了,Git会自动去找。
    git branch -d branchName
    删除本地分支
    git push origin --delete develop
    删除远程分支
    git remote -v
    查看远程服务器地址和仓库名称
    git remote show origin
    查看远程服务器仓库状态
    开发规范总结:
    开发过程中每个工程师在推送代码之前要先执行拉取操作,因为远程仓库有更新的话,不先拉取(pull/fetch)是无法推送(push)的,尽量少使用git pull进行拉取,而是先用git fetch拉取在进行git merge。
    团队开发禁止在主干直接修改代码,一定要开分支,而且是远程分支进行开发。
    创建分支可以打标签,git tag。
    拉取代码时最好先git fetch再git merge而不是直接git pull。
    提交代码和推送代码以及代码上线之前,一定要先和原来版本对比 git diff 。
    提交代码加注释 git commit -m 'Bob developed' 。
    author:Lik
    Endeavoring to powerless, struggling to move yourself.
  • 相关阅读:
    SpringCloud Ribbon实现负载均衡,SpringCloud Ribbon自定义策略
    springCloud zookeeper整合,Java Zookeeper微服务注册中心整合
    SpringCloud Eureka安装和使用,SpringCloud使用Eureka作为服务注册中心
    Linux yum安装Consul服务中心,Centos7在线安装consul
    SpringCloud consul安装和使用,Windows Consul安装和使用,Java consul服务中心安装和使用
    哔哩哔哩视频下载到电脑,bilibili UWP下载的视频重命名,blibli视频下载到电脑
    elasticsearch kibana安装和配置
    elasticsearch安装和配置,elasticsearch启动报错:can not run elasticsearch as root
    cmd打开当前文件所在目录,cmd进入当前文件目录,cmd进入指定目录
    京东到家 首页 笔记
  • 原文地址:https://www.cnblogs.com/likwin/p/7722805.html
Copyright © 2011-2022 走看看