Git 基础应用

Git 学习

1.git工具基本含义

  git最大的用处就是记录每个版本的变动、比较每个版本的不同,以及多人维护和开发同一个项目。支持版本回退。

2.git基本命令

  a.创建版本库

   $ mkdir learngit //创建目录

  $ cd learngit  //进入目录
  $ pwd         //查看当前目录
  /Users/michael/learngit

  $ git init    //创建本地版本库
  Initialized empty Git repository in /Users/michael/learngit/.git/

  $ git add readme.txt //将readme.txt添加到工作区  $ git commit -m "test"//将readme.txt提交到本地仓库  $git status          //查看目前工作区又没有没有被提交到仓库的文件  $git  diff readme.txt //在提交到仓库之前查看那里做了改动(只能在提交到仓库之前)  $git log             //查看历史记录  $git log --pretty=oneline //在一行上面显示历史记录  $git reset --hard HEAD^   //回退到上一个版本($git reset --hard HEAD^ 表示回退到上上一一个版本)  $git reset --hard 版本代码 //回退到版本代码所代表的版本号(版本代码使用$git log 查看)  $git reflog               //显示操作后的每一个命令,包括回退版本,一般用于回退后后悔时,查看没有回退之前的版本号,然后使用$git reset --hard 版本号 ,来回到没有回退之前的版本  $git diff HEAD -- readme.txt //查看工作区和版本库中readme.txt的不同  $git checkout -- readme.txt  //撤销最近一次对readme.txt的修改,如果还没有$git add 就回到没有修改的上一个版本,如果已经$git add后才修改,就回到刚刚$git add的状态  $git reset HEAD readme.txt   //将redme.txt从暂存区回退到工作区,然后使用$git checkout -- readme.txt 放弃工作区的修改  $git rm readme.txt //从版本库中删除readme.txt(必须先将本地的readme.txt删除,才能使用这个命令。使用 rm readme.txt命令将本地readme.txt删除以后可以使用$git checkout -- readme.txt 将文件找回。$git checkout -- readme.txt,其实是用版本库中的版本替换工作区中的版本)  $ssh-keygen -t rsa -C "[email protected]" //创建本机SSH key 用于github 网站的密匙绑定,即让github服务器知道这台主机和你的github账号是关联的,邮件地址填写自己的,(创建完成之后,在根目录会有.ssh文件夹,里面有两个文件,id_rsa和id_rsa.pub,其中id_rsa.pub里就是需要绑定在github网站上的公匙)  $git remote add origin [email protected]:mingming/learngit.git //关联远程github服务器上的仓库,记得把[email protected]:mingming/learngit.git换成自己仓库的地址  $git push -u origin master  //推送内容到远程仓库,并且将本地master分支和远程master分支关联起来(第一次推送使用)  $git push origin master  //推送本地master分支到远程master分支,(修改后直接使用此命令推送)  $git clone [email protected]:mingming/learngit.git //从远程仓库克隆,可以直接填充本地新仓库  $git checkout -b dev  //创建dev分支并且切换到dev分支  $git branch dev      // 创建dev分支  $git checkout dev    //切换到dev分支  $git branch         //列出所有分支  $git merge dev    //将dev分支的工作合并到当前分支  $git branch -d dev //删除dev分支  $git log --graph --pretty=oneline --abbrev-commit  //查看分支合并图  $git merge --no-ff -m "merge with no-ff" dev     //以禁用Faste forword方式合并分支,合并完之后可以在历史中查看到曾经做过合并,而使用Faste forword方式则不会在历史记录中显示  $git stash //保存工作区现场,(当临时有任务需要修改时,需要暂停本分支上面工作任务)  $git stash list //查看本分支的工作现场列表  $git stash apply //恢复本分支工作现场  $git stash drop //删除stash内容  $git stash pop  //恢复本分支stash内容并且删除stash  $ git stash apply [email protected]{0} //恢复指定的stash  $git branch -D dev //强制删除dev分支  $git remote -v  //查看远程库详细信息  $git checkout -b dev origin/dev  //创建本地dev分支,  $git branch --set-upstream dev origin/dev  //指定本地dev和远程关联  $git tag V1.0 //给当前分支的版本号打上标签V1.用于标记自己的版本  $git tag    //查看所有标签  $git tag V1.0   444444 //给commit id为444444的版本号打上标签  $git show V1.0 //查看V1.0版本的详细信息  $git tag -a V1.0 -m "shuo ming xin xi"  //打上标签并且给出标签说明  $git tag -d V1.0    //删除V1.0标签  $git push origin V1.0  //推送V1.0标签  $git push origin tags   //推送所有标签  $git push origin :refs/tags/V1.0  //删除远程标签,(在此之前必须删除本地标签V1.0)  3.git的使用技巧  a.远程仓库上可以fork别人的项目然后,clone到本地进行二次开发  b.可以编写.gitignore文件实现添加到工作区的时候忽略其中某些文件  c.两个人人,或者一个人在两台电脑上修改同一段代码,其中一方push到远程之后,另一方push时,必然要git pull一下更新本地仓库,然后查看双方修改的冲突在哪里,对冲突再次修改才能push到远程  d.搭建git服务器    。$ sudo apt-get install git  //在服务器端安装git软件    。。$sudi adduser git         //创建一个git用户,用来运行git服务。    。。。收集需要登陆的用户的公匙(id_rsa.pub文件里的),将所有用户的公匙导入到文件/home/git/.ssh/authorized_keys,一行一个,//人数少可以使用此文件,人数多了可以使用Gitosis来管理    。。。$ sudo git init --bare sample.git //在选定的作为仓库的目录中输入此命令,会创建一个名字为sample.git的空仓库    。。。。$ sudo chown -R git:git sample.git //把owner改成git    。。。。。出于安全考虑,创建的git用户不允许登陆shell,通过将/etc/passwd里面的git:x:1001:1001:,,,:/home/git:/bin/bash改为git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell即可,这样git用户就可以通过ssh链接,但是不能使用shell登陆    。。。。。。在各自用户的电脑上使用$ git clone [email protected]:/srv/sample.git 克隆仓库就OK  
时间: 2024-11-05 21:52:17

Git 基础应用的相关文章

Gi之(二)Git基础命令

三个工作区域 使用Git之前,首先要弄清Git的三个管理区域,有助于理解Git的运行原理,以及每个Git命令对文件造成的影响. 对于任何一个文件,在本地的Git内部都有三种状态: l   已修改(modified) 表示修改了某个文件,但还没有提交保存.包括新增.删除了一个文件,也属于已修改状态的一种. l   已暂存(staged) 表示把已修改的文件放到了暂存区,也就是放到了下次提交时的清单中. l   已提交(committed) 表示该文件已经被安全地保存在本地数据库中了. 三种状态对应

git基础及分支

关于版本控制 git是一种分布版本控制系统,每一主机都保存了完整副本.必杀技是分支. 在Windows可安装git客户端msysgit. git基础 第一次看progit觉得有点不懂,不懂版本控制,一条条命令写的觉得很麻烦没头绪.这次在看了向导guides.github.com之后,文章避免了一些细枝末节的命令,而是介绍工作流程,懂了一点工作大概流程再开始使用命令比较合适. 三种状态 工作目录.暂存区域.git目录 工作目录就是你打开文件夹看到可见目录.暂存区域含有添加(add)之后的文件.gi

Git基础

这次开发要使用Git取代SVN.借机学习了一二,跟大家分享一下. Git简单介绍 一句话总结的说,Git是一个开源的分布式版本号控制系统,由Linux内核开发者开发,现已用来管理android等多个大型项目. 设计目标: 高速操作 简单设计 并行开发(上千个) 全然分布式 能力超强(类似Linux内核管理) 和SVN 提到版本号管理系统,自然会想到SVN,假设你原来是使用tortoiseSVN操作,你如今能够用tortoiseGit.表面上看.你会发现tortoiseGit除了多了几个诸如Pus

Git基础知识(二)

前言 本篇是Git基础知识(一)的延续,由于篇幅原因,分成两篇. 我们重新建立一个文件夹,执行git init. 添加一个有三行aaaaa内容的git.txt文件,并commit. 分支 截止目前,我们都是在一个叫做master的分支上工作.Git允许我们创建分支去做一些其他的事儿,而不影响到你的master分支. 1. branch branch命令可以查看分支.创建分支以及删除分支. a. 查看分支 git branch 可以看到我们当前只有一个分支master,也叫主分支,*号代表当前所在

Git详解之二 Git基础

来自:http://www.open-open.com/lib/view/open1328069733264.html Git 基础 读完本章你就能上手使用 Git 了.本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置:开始或停止跟踪某些文件:暂存或提交某些更 新.我们还会展示如何让 Git 忽略某些文件,或是名称符合特定模式的文件:如何既快且容易地撤消犯下的小错误:如何浏览项目的更新历史,查看某

git基础一

git基础学习 git客户端,git服务器 1.通过git命令,在本地创建仓库 该仓库可上传到服务器,进行git管理 使用git init等语句 2.将服务器创建的仓库克隆到本地 在服务器中创建仓库,使用clone将仓库克隆到本地 github是基于git的代码托管平台,用户可以建立公共仓库,(公共仓库,代码开源),通过客户端将代码上传到仓库: 问题: 1. 客户端安装? 2. 客户端如何连接到github仓库? 3. 客户端如何与仓库交互,比如获取仓库文件,提交,建立分支等? ××××××××

Git详解之二:Git基础

原文:<Pro Git> Git 基础 读完本章你就能上手使用 Git 了(伯乐在线注:如果你对Git还不了解,建议从本Git系列第一篇文章开始阅读).本章将介绍几个最基本的,也是最常用的 Git 命令,以后绝大多数时间里用到的也就是这几个命令.读完本章,你就能初始化一个新的代码仓库,做一些适当配置:开始或停止跟踪某些文件:暂存或提交某些更 新.我们还会展示如何让 Git 忽略某些文件,或是名称符合特定模式的文件:如何既快且容易地撤消犯下的小错误:如何浏览项目的更新历史,查看某两次更新之间的差

git基础知识

本文没啥难度,基本上是我照着廖雪峰的博客敲的代码,权当做篇学习笔记. git基础知识 git diff example.txt git add example.txt git commit -m 'addby XXXX' git status git log[--pretty=online]     windows上安装git客户端,到官网下载即可. 安装完成后,在开始--> GitBash ,输入下面的内容: git config --global user.name'lirl' git co

Git基础操作

配置秘钥 1.检查本机有没有秘钥 检查~/.ssh看看是否有名为d_rsa.pub和id_dsa.pub的2个文件. $ ~/.sshbash: /c/Users/lenovo/.ssh: Is a directory 2.如果没有就创建新的秘钥 $ ssh-keygen -t rsa -C "注册Github用的邮箱" $ ssh-keygen -t rsa -C "注册Github用的邮箱" 按照提示一路输入即可. ssh-keygen -t rsa -C &q

【git学习二】git基础之git管理本地项目

1.背景 git基础打算分两部分来说,一部分是对于本地项目的管理,第二部分是对于远程代码仓库的操作.git执行本地项目管理包括对于相关文件的追踪,暂存区的比较分析,提交,撤销等功能. 2.本地项目管理 首先mkdir一个文件夹,叫做GitTestFile,然后执行下面代码,创建git的管理配置 git init 接着加入如下代码,git add . ,把项目加入跟踪队列 git add . 可以用git status查看状态 加入readme文件,vim readme.txt .输入git st