git的学习记录

  在ubuntu上面工作了有一段时间了,今天在解决问题的时候搜索到了linux的源码树,这一个网站http://git.kernel.org/cgit/,他的管理就是使用的git。以前在windows上面接触过git,但是感觉非常麻烦,学习的也是云里雾里的,只是大概知道他是高效管理代码项目的一个工具,能够给项目团队带来很大的方便,但是具体就没有使用过了。恰恰这里就可以使用我在开源中国的账号了,因为那里也有一个git项目托管。

  下面记录过程:

  首先登陆http://git.oschina.net/,登录账号密码,创建一个项目;

  打开ubuntu终端,切换到想要的工作目录,输入git clone https://git.oschina.net/galuo/s5pv210_spi_ad7792.git,https...这一串字符是创建项目后就会生成的;于是就会在工作目录下生成由项目名命名的文件夹,cd命令切换的该文件夹。于是实现了项目的创建和Git 版本库的初始化。

  Git 版本库的初始化还有另外一种方式,使用git init 和 git remote。cd命令切换到想要的工作目录,使用git init就会初始化一个本地的空仓库,在该工作目录下生成.git文件夹等,然后就可以使用git remote add命令来增加一个远程服务器端;

  例如:git remote add origin https://git.oschina.net/galuo/s5pv210_spi_ad7792.git

  上面的命令就会增加URL地址为https://git.oschina.net/galuo/s5pv210_spi_ad7792.git,名称为origin的远程服务器,以后提交代码的时候只需要使用 origin别名即可。

  以下修改:http://blog.csdn.net/ithomer/article/details/7529022

   Git 常用命令

  1.远程仓库相关命令

  检出仓库:        $ git clone https://git.oschina.net/galuo/s5pv210_spi_ad7792.git

  查看远程仓库:$ git remote -v

  添加远程仓库:$ git remote add [name] [url]

  删除远程仓库:$ git remote rm [name]

  修改远程仓库:$ git remote set-url --push [name] [newUrl]

  拉取远程仓库:$ git pull [remoteName] [localBranchName]

  推送远程仓库:$ git push [remoteName] [localBranchName]

  *如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,如下:

  $git push origin test:master         // 提交本地test分支作为远程的master分支

  $git push origin test:test              // 提交本地test分支作为远程的test分支

  2.分支(branch)操作相关命令  

  查看本地分支:$ git branch

  查看远程分支:$ git branch -r

  创建本地分支:$ git branch [name] ----注意新分支创建后不会自动切换为当前分支

  切换分支:$ git checkout [name]

  创建新分支并立即切换到新分支:$ git checkout -b [name]

  删除分支:$ git branch -d [name] ---- -d选项只能删除已经参与了合并的分支,对于未有合并的分支是无法删除的。如果想强制删除一个分支,可以使用-D选项

  合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并

  合并分支:$ git merge [name] ----将名称为[name]的分支与当前分支合并

  创建远程分支(本地分支push到远程):$ git push origin [name]

  删除远程分支:$ git push origin :heads/[name] 或 $ gitpush origin :[name]

  *创建空的分支:(执行命令之前记得先提交你当前分支的修改,否则会被强制删干净没得后悔)

  $git symbolic-ref HEAD refs/heads/[name]

  $rm .git/index

  $git clean -fdx

  3.版本(tag)操作相关命令

  查看版本:$ git tag

  创建版本:$ git tag [name]

  删除版本:$ git tag -d [name]

  查看远程版本:$ git tag -r

  创建远程版本(本地版本push到远程):$ git push origin [name]

  删除远程版本:$ git push origin :refs/tags/[name]

  合并远程仓库的tag到本地:$ git pull origin --tags

  上传本地tag到远程仓库:$ git push origin --tags

  创建带注释的tag:$ git tag -a [name] -m 'yourMessage'

  

  4.另一些命令

  显示状态:$git status ----显示当前工作的分支以及列出暂存区需要提交的文件

  添加文件内容至索引:$git add [filename] ----添加文件到暂存区 

  工作区与提交任务(提交暂存区,stage)中相比的差异:$ git diff

  工作区和HEAD(当前工作分支)相比的差异:$ git diff HEAD

  提交暂存区(提交任务,stage)和版本库中文件的差异:$ git diff --cached (或--staged)

  

  说明:https://git.oschina.net/galuo/s5pv210_spi_ad7792.git 为使用s5pv210的SPI采集AD值的新建项目,AD芯片为AD7792。欢迎提交代码。。。。。。

原文地址:https://www.cnblogs.com/galuo/p/4141152.html