一、clone命令
git clone [--template=<template_directory>]
[-l] [-s] [--no-hardlinks] [-q] [-n] [--bare] [--mirror]
[-o <name>] [-b <name>] [-u <upload-pack>] [--reference <repository>]
[--dissociate] [--separate-git-dir <git dir>]
[--depth <depth>] [--[no-]single-branch]
[--recurse-submodules] [--[no-]shallow-submodules]
[--jobs <n>] [--] <repository> [<directory>]
1.1、git clone
比如,克隆okhttp的版本库:git clone https://github.com/square/okhttp.git
或者, git clone <版本库的网址> <本地目录名>
git clone支持多种协议,除了HTTP(s)以外,还支持SSH、Git、本地文件协议等
二、branch命令
1.1、git branch,
一般用于分支的操作,比如创建分支,查看分支等等,
1.2 git branch -r
查看远程版本库分支列表
1.3 git branch -a
查看所有分支列表,包括本地和远程,标志*表示当前分支
1.4 git branch dev
创建名为dev的分支,创建分支时需要是最新的环境,创建分支但依然停留在当前分支
1.5 git branch -d dev
删除dev分支,如果在分支中有一些未merge的提交,那么会删除分支失败,此时可以使用 git branch -D dev:强制删除dev分支,
1.6 git branch -vv
可以查看本地分支对应的远程分支
1.7 git branch -m oldName newName
给分支重命名
三、checkout命令
1.1、git checkout master
切换分支
1.2、git checkout -- AndroidManifest.xml
从索引中恢复文件,或者放弃对文件的修改
1.3、git checkout .
对当前目录所有修改的文件恢复
pull
git pull --rebase origin master
拉远程最新代码
四、commit命令
git commit [-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]
[--dry-run] [(-c | -C | --fixup | --squash) <commit>]
[-F <file> | -m <msg>] [--reset-author] [--allow-empty]
[--allow-empty-message] [--no-verify] [-e] [--author=<author>]
[--date=<date>] [--cleanup=<mode>] [--[no-]status]
[-i | -o] [-S[<keyid>]] [--] [<file>…]
1.1、git commit -m "commit msg"
提交已经被git add进来的改动,所以在commit前需要执行git add操作,
当然如果想两条命令一起执行,可以如下:
git commit -am "commit msg"
如果您提交,然后立即发现错误,可以使用 git reset 命令恢复。
其它常用命令:
git status
查看当前分支状态,检查文件状态,看看是否有没提交的记录或有冲突的文件,在commit前检查一下是个好习惯
git log
查看提交记录
git show
查看提交详情
2.git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。
3.git reset --hard HASH #返回到某个节点,不保留修改。
4.git reset --soft HASH #返回到某个节点。
5.保留修改git clean -df #返回到某个节点
git stash #把所有没有提交的修改暂存到stash里面。可用git stash pop回复。