git下载
访问 https://git-scm.com/ 下载对应的git版本
一路点击下一步完成安装
配置git信息
Windows配置
打开cmd窗口
git config --global user.name “用户名”
git config --global user.email “邮箱”
输入
git config --list
查看配置信息
配置git目录
- 新建一个文件夹
- 命令行切换至工作目录
-
git init
向git暂存区中添加文件
git add 文件名
git add *
添加工作目录中所有文件至暂存区
提交暂存区文件
git commit -m “改动的说明”
查看git状态
git status
查看历史提交记录
git log
参数
- –decorate 显示所有引用
- –oneline 一行显示(快照id 和说明)
- –graph 图形化显示
- –all 显示所有分支
比较暂存区与工作目录文件
git diff
对比两个快照
git diff 快照1 快照2(部分快照id)
对比快照与当前目录
git diff 快照id
对比最新提交的快照与当前目录
git diff HEAD
比较暂存区域与仓库
git diff --cached
指定快照与仓库对比
git diff --cached 快照id
修改最后一次提交
修改提交说明
git commit --amend
进入编辑,第一行为说明
或使用
git commit --amend -m “新的说明”
删除文件
git rm 文件名
删除工作目录和暂存区域中的文件
git rm -f 文件名
强制删除工作目录和暂存区域中的同名文件
git rm --cached 文件名
只删除暂存区域的文件
git重命名文件
git mv 文件 新文件名
git分支
创建分支
git branch 新分支名
切换分支
git checkout 分支名
git checkout -b 分支名
创建并切换至新分支
合并分支
git merge 分支名
将制定分支合并到当前分支中
删除分支
git branch -d 分支名
checkout
用来更改HEAD指针的指向的快照,并将快照覆盖到工作目录和暂存区
HEAD~ 表示切换到当前快照的上一个快照
HEAD~~ 表示切换到当前快照的上上一个快照
git checkout HEAD~
不更改HEAD指向,只恢复部分文件
git checkout HEAD~ README.txt
将上个快照中README.txt 恢复到工作目录和暂存区
git checkout README.txt
将暂存区中REAME.txt恢复到工作目录
为防止有名为README.txt 的分支存在,最好按如下方式使用
git checkout – README.txt
reset
reset 命令是用来“回到过去”的,根据选项的不同,reset 命令将移动 HEAD 指针(–soft) -> 覆盖暂存区域(–mixed,默认)-> 覆盖工作目录(–hard)
git clone
部分内容转自
在使用git来进行版本控制时, 为了得一个项目的拷贝(copy),我们需要知道这个项目仓库的地址(Git URL).
Git能在许多协议下使用,所以 Git URL 可能以ssh://, http(s): //, git://,或是只是以一个用户名(git 会认为这是一个ssh 地址)为前辍.
有些仓库可以通过不只一种协议来访问,
例如, Git 本身的源代码你既可以用 git:// 协议来访问:
git clone git://git.kernel.org/pub/scm/git/git.git
也可以通过http 协议来访问:
git clone http://www.kernel.org/pub/scm/git/git.git
git://协议较为快速和有效,但是有时必须使用http协议,比如你公司的防火墙阻止了你的非http访问请求.如果你执 行了上面两行命令中的任意一个,你会看到一个新目录: ‘git’,它包含有所的Git源代码和历史记录.
在默认情况下,Git会把"Git URL"里最后一级目录名的’.git’的后辍去掉,做为新克隆(clone)项目的目录名:
(例如.
git clone http://git.kernel.org/linux/kernel/git/torvalds/linux-2.6.git
会建立一个目录叫’linux-2.6’ )
另外,如果访问一个Git URL需要用法名和密码,可以在Git URL前加上 用户名 ,并在它们之间加上 @ 符合以表示分割,然后执行git clone命令,git会提示你输入密码。
示例
git clone robin.hu @ http://www.kernel.org/pub/scm/git/git.git
这样将以作为 robin.hu 用户名访问 http://www.kernel.org/pub/scm/git/git.git , 然后按回车键执行 git clone 命令, git 会提示你输入密码。
另外,我们可以通过-b 来指定要克隆的分支名,比如
$ git clone -b master2 …/server .
表示克隆名为master2的这个分支,如果省略 -b 表示克隆master分支。