GIT常用命令

2018-09-02  本文已影响0人  xuezimu

1.git init

创建仓库

2.配置名字和电子邮件

$ git config --global user.name 'oldboy'
$ git config --global user.email 123456789@qq.com

3.git clone

使用 git clone 拷贝一个 Git 仓库到本地,让自己能够查看该项目,或者进行修改。
比如克隆github上的项目:

$ git clone git@github.com:oldboy-pro/stm32-example.git

4. git add

git add 命令可将该文件添加到缓存

git add test.c README.md
git add .

5.git status

git status 以查看在你上次提交之后是否有修改或者是否有未提交的文件


6.git diff

7.git commit

$ git commit -m "First"

加-a 直接直接更新缓存和仓库,一步到位

$ git commit -a -m "test"
$ git commit -am 'test'

在最后一次提交的基础上继续commit

$ git commit --amend

自动生成Change-Id和提交者的名字邮件

$ git commit -s

8.git reset

撤销仓库和暂存区,保留工作区:

$ git reset HEAD^

用仓库中的内容替换暂存区中的内容,工作区不变:

$ git reset HEAD

不难理解,其实HEAD代表的是当前版本,HEAD^代表上一版本,git reset HEADgit reset HEAD^都是回退仓库和暂存区到某一版本,不过git reset HEAD本来就是当前仓库,所以仓库内容不变。

用仓库中的文件替换工作区和暂存区中所有修改内容:

$ git reset --hard HEAD

9.git rm

从当前目录和缓存中删除文件

$ git rm test.c 

如果文件修改了,没添加到缓存里,则需要加-f 强制删除

$ git rm -f test.c

如果只想删除缓存里的文件,保留工作目录里的这个文件,可以使用如下命令

$ git rm --cached test.c 

删除一个目录下的所有文件和子文件夹,可以用递归删除

$ git rm -r *

10.git mv

改名文件,并且将这个改名放入暂存区

$ git mv [file-original] [file-renamed]

11.ssh-keygen

生成ssh key

ssh-keygen -t rsa -C "your_email@youremail.com"

12.git push

git remote add origin git@github.com:oldboy-pro/test.git
git push -u origin master

如果github上有与本地仓库不一样的地方,可以先

$ git pull --rebase origin master

13.杂记

git checkout --file用暂存区种的文件替换工作区

git checkout HEAD --file 用仓库中的文件替换工作区和暂存区中指定的文件

git log查看历史提交记录

git log -p查看最后一次提交的修改内容

git log -p <file>查看指定文件的提交历史

git branch查看本地分支

git fetch origin branchName:branchName 拉取远程分支到本地并创建该本地分支

git checkout branchName 切换分支

git clean -n查看会删除哪些untracked files

git clean -f删除untracked files

git diff > test.patch根据当前工作区修改生成patch

git apply test.patch将patch导入工作区

checkout命令用于从历史提交(或者暂存区域)种拷贝文件到工作目录,也可用于切换分支

上一篇 下一篇

猜你喜欢

热点阅读