Git常用命令

常见的git操作命令,非常有用但是并不很熟练的一些命令,工作生活中经常用到git,但是很多时候只会使用pull push add commit命令,因此分享一些最近在学习的命令

请确保已经安装了git客户端

简略的代码提交到GitHub

git add .
git commit -m "message"
git pull
git push

一般配置

git --version //查看当前git版本
git config --global user.name //获取当前登录的用户
git config --global user.email //获取当前登录用户的邮箱

登录git

如果刚才没有获取到用户配置,则只能拉取代码,不能修改

git config --global user.name 'userName'
git config --global user.email 'email'

使用git的三种方式

使用git有三种方式,请按照你的需求选择
1.只在本地使用
2.将本地仓库上传到GitHub
3.下载GitHub上的仓库

git的使用
初始化

mkdir git-demo //创建目录作为我们的项目目录

cd git-demo //进入目录

git init //会在git-demo里创建一个.git目录

ls -la //会看到.git目录,他就是一个仓库,不要点进去看,这仓库有毒

touch index.html
mkdir css
touch css/style.css //添加两个文件,index.html和css/style.css

git add index.html
git add css/style.css //将一个一个变动文件add到「暂存区」
or
git add . //把当前目录(.表示当前目录)里面的变动都加到「暂存区」

git commit -m "信息" //将你 add 过的内容「正式提交」到本地仓库,并添加一些注释信息,方便日后查阅

git status -sb // 发现没有文件变动了,这是因为文件的变动已经记录在仓库里了

git log //这时可以看到历史上的变动

git pull //拉取远程仓库的代码

git push //将本地仓库push到远程仓库

以上就是一次完整过程

git status //查看当前状态,可看到所有文件的修改变动

git diff //直观查看修改的内容

git rm -rf 文件名 // 删除某文件

git reset --hard HEAD //会把所有未提交的变动(代码/文件/目录)直接删除

配置

git config -e //编辑git配置文件

增加/删除文件

git add -p //添加每个变化前,都会要求确认,对于同一个文件的多处变化,可以实现分次提交

git rm --cached [file] //停止追踪指定文件,但该文件会保留在工作区

git mv [file-original] [file-renamed] //改名文件,并且将这个改名放入暂存区

代码提交

git commit -v //提交时显示所有diff信息

git commit --amend -m [message] //使用一次新的commit,替代上一次提交,如果代码没有任何新变化,则用来改写上一次commit的提交信息

git commit --amend [file1] [file2] ... //重做上一次commit,并包括指定文件的新变化

分支

commit git branch [branch] [commit] //新建一个分支,指向指定

git cherry-pick [commit] //选择一个commit,合并进当前分支

git push origin --delete [branch-name] git branch -dr [remote/branch] //删除远程分支

撤销

git checkout [commit] [file] // 恢复某个commit的指定文件到暂存区和工作区

git reset [file] //重置暂存区的指定文件,与上一次commit保持一致,但工作区不变

git reset --hard //重置暂存区与工作区,与上一次commit保持一致

git reset [commit] //重置当前分支的指针为指定commit,同时重置暂存区,但工作区不变

git reset --hard [commit_id] //回滚到指定的commit_id版本

git reset --keep [commit] //重置当前HEAD为指定commit,但保持暂存区和工作区不变

git revert [commit] //新建一个commit,用来撤销指定commit 后者的所有变化都将被前者抵消,并且应用到当前分支

查看信息

git log //显示当前分支的版本历史

git log --stat //显示commit历史,以及每次commit发生变更的文件

git log -S [keyword] //搜索提交历史,根据关键词

git log [tag] HEAD --pretty=format:%s //显示某个commit之后的所有变动,每个commit占据一行

git log [tag] HEAD --grep feature //显示某个commit之后的所有变动,其"提交说明"必须符合搜索条件

git log --follow [file] git whatchanged [file] //显示某个文件的版本历史,包括文件改名

diff git log -p [file] //显示指定文件相关的每一次

git log -5 --pretty --oneline //显示过去5次提交

git shortlog -sn //显示所有提交过的用户,按提交次数排序

git blame [file] //显示指定文件是什么人在什么时间修改过

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。