文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。

基本的 Git 工作流程如下:

  • 在工作目录中修改某些文件。
  • 对修改后的文件进行快照,然后保存到暂存区域。
  • 提交更新,将保存在暂存区域的文件快照永久转储到 Git 目录中。

1.安装git和git-review

apt-get install git

apt-get install git-review

2.创建分支

建立分支是你创建代码的独立版本的动作,独立于你的主干分支。默认地,每次你提交到Git的文件都会被储存到“master(主干)”分支。
现在我们来说说,你想要向项目里添加一个功能,但你想要能够回滚到现在版本,以防出现差错,或者你决定要放弃这个功能。这就是你创建分支的时候了。

创建并同时切换到你新建的分支命令:

  git checkout -b new_feature

或者,你可以先创建一个分支然后手动切换:

  git branch new_feature

   git checkout new_feature

3.查看当前branch状态

  git status

4.添加当前branch的代码修改到本地暂存区域

  git add *

  git add .

5.查看版本的log记录

  git log

6.查看git的配置

git config --list

git config -l

user.name=xiangxinyong
user.email=xiangxinyong@huawei.com
core.repositoryformatversion=0
core.filemode=true
core.bare=false
core.logallrefupdates=true
remote.origin.url=https://git.openstack.org/openstack/murano
remote.origin.fetch=+refs/heads/*:refs/remotes/origin/*
branch.master.remote=origin
branch.master.merge=refs/heads/master
remote.gerrit.url=https://xianxinyong:CPhXYJBLzg6u@review.openstack.org/openstack/murano.git
remote.gerrit.fetch=+refs/heads/*:refs/remotes/gerrit/*

7.修改git配置项

git config --global user.name xiangxinyong

8.添加或修改git的message

添加:git commit -a -F .git/message  

修改:git commit --amend -a -F .git/message

9.添加和设置gerrit(可选)

  当端口29418被封的时候需要按以下步骤设置:

首先,需要登录review.openstack.org,然后在Settings -> HTTP Password里,生成一个HTTP密码,应该是一个大小写加数字的随机字符串。

git remote set-url gerrit https://username:http-password@review.openstack.org/openstack/nova.git命令把ssh修改成https方式,当然也可以用http

git remote add gerrit https://username:http-password@review.openstack.org/openstack/nova.git

备注:上面字符串中的用户名/密码改成你的gerrit用户名和上一步生成的HTTP密码。

10.提交代码到远程代码库

  git review

Else:

(1)git diff 查看本地修改的具体内容

(2)git branch -d branchname 删除本地分支

(3)git checkout . 取消本地所有修改

(4)git pull https://git.openstack.org/openstack/murano 获取最新代码

(5)git rebase -i 本地重新建立依赖关系,删除掉所有的依赖描述,只保留当前patch的描述,

Ctrl+X,Y, Enter.

(6)git review -d 1111 获取指定的远程版本

  (7)git show-ref YOUR_TAG

(8)refs/heads/stable/mitaka表示本地分支

(9)refs/remotes/origin/stable/mitaka使用git checkout stable/mitaka

(10)refs/tags/kilo-eol使用git checkout -b stable/kilo kilo-eol

TryStack国内镜像站:

OpenStack git cmd的更多相关文章

  1. Git GUI,Git Bash,Git CMD之间的区别

    Git GUI,Git Bash,Git CMD之间的区别 Git Bash: Bash,Unix shell的一种,Linux与Mac OS X v10.4都将它作为默认shell.Git Bash ...

  2. [Git]2018-10 解决git cmd中文乱码问题

    2018年10月12日 莫名其妙出现cmd下git log中文乱码问题,显示一堆<E4><A8>之类的乱码.git bash却一切正常. 怀疑是Windows系统升级出现的不兼 ...

  3. Git CMD - config: Get and set repository or global options

    命令参数 --get 获取指定的配置项. --global 对于写选项:全局配置,将参数配置于 ~/.gitconfig 而不是仓库目录下的 .git/config.对于读选项:只从 ~/.gitco ...

  4. Git CMD - init: Create an empty Git repository or reinitialize an existing one

    命令格式 git init [-q | --quiet] [--bare] [--template=<template_directory>] [--separate-git-dir &l ...

  5. Git CMD - clone: Clone a repository into a new directory

    命令格式 git clone [--template=<template_directory>]  [-l] [-s] [--no-hardlinks] [-q] [-n] [--bare ...

  6. Git CMD - add: Add file contents to the index

    命令格式 git add [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p] [- ...

  7. Git CMD - status: Show the working tree status

    命令参数 git status [<options>…​] [--] [<pathspec>…​] 命令格式 --short, -s 短格式输出. -- long 长格式输出, ...

  8. Git CMD - diff: Show changes between commits, commit and working tree, etc

    命令格式 git diff [options] [<commit>] [--] [<path>…​] git diff [options] --cached [<comm ...

  9. Git CMD - add: Record changes to the repository

    命令格式 git commit [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend] [--dry-run] [(-c ...

随机推荐

  1. jenkins pipline 用法收集

    1.下载多个项目 node { stage('clone'){ dir('test1'){ checkout([$class: 'GitSCM', branches: [[name: '*/maste ...

  2. 【转】Pro Android学习笔记(二四):用户界面和控制(12):Style和Theme

    目录(?)[-] 静态格式 代码中设定 Style Theme 静态格式 在res/values中设置静态的Style,在资源中设置静态Style可使用的HTML格式有<i> <u& ...

  3. Java变量初始化的讲解

    首先需要说明的是Java中的变量分为两种:成员变量和局部变量 其中成员变量又可分为:实例变量(非静态变量)和类变量(静态变量) 局部变量(局部变量的作用时间很短,所以一般是存储在栈中的): 1.形参在 ...

  4. Python-RabbitMQ消息队列实现rpc

    客户端通过发送命令来调用服务端的某些服务,服务端把结果再返回给客户端 这样使得RabbitMQ的消息发送端和接收端都能发送消息 返回结果的时候需要指定另一个队列 服务器端 # -*- coding:u ...

  5. PhpStorm选中相同文字高亮

    1.Setting(设置)->plugins->Browse Repositories 输入BrowseWordAtCaret 搜索,安装,然后重启: 2.Setting(设置) -> ...

  6. DevKit及rails的安装

    Ruby on Rails的安装,是从被称为RubyGems的包管理系统开始的. Ruby on Rails是由Ruby处理系统的类库的.被称为"gem"的格式来进行配置的.&qu ...

  7. 报错:Caused by: org.hibernate.id.IdentifierGenerationException: ids for this class must be manually assigned before calling save(): cn.itcast.bos.domain.base.SubArea

    因为 实体类中的主键 是String类型 不能自动为其分配id  所以需要手动设置在service层   model.setId(UUID.randomUUID().toString());

  8. netty的引用计数

    netty的引用计数文档看http://netty.io/wiki/reference-counted-objects.html 为什么会引用引用计数呢,Java中不是有gc线程帮我们回收对象吗?我个 ...

  9. c++中Int装string

    java中,string类型非常强大,任何类型和string类型相加都变成了string类型.但是c++中string功能就比较少 int转string有两种方式 1:stringstream; ; ...

  10. 《鸟哥的Linux私房菜》读书笔记2

    1. 压缩后缀与压缩程序: *.Z compress 程序压缩的档案; *.bz2 bzip2 程序压缩的档案; *.gz gzip 程序压缩的档案; *.tar tar 程序打包的数据,并没有压缩过 ...