
-
Remote:远程仓库
-
Repository:本地仓库
-
Index/Stage:暂存区
-
workspace:工作区
常用命令:
1、新建代码库
# 在当前目录创建一个git代码库
git init
# 新建一个目录,将其初始化为git代码库
git init [project_name]
# 从远程仓库clone一个git代码库到本地
git clone [url]
2、本地仓库配置
# 展示本地的git配置
git config list
# 设置本地git的用户名、邮箱等
git config [--global] user.username "uname"
git config [--global] user.email "example.@xxx.com"
# 查看本地git的用户名和邮箱等
git config [--global] user.username
git config [--global] user.email
3、增加/删除文件
# 添加单个文件
git add [fileName]
# 添加多个文件
git add [fileName1] [fileName2] ...
# 添加当前目录下的所有文件
git add .
# 添加时,每遇到变化时,都要求再次确认,即同一文件多处改变,需要确认多次
git add -p [fileName]
# 删除工作区文件,将删除的文件放入暂存区
git rm [fileName] [fileName] ...
# 修改文件名
git mv [oldName] [newName]
4、代码提交
# 提交整个暂存区到仓库
git commit -m "注释"
# 提交暂存区的指定文件到仓库
git commit [fileName1] [fileName2] -m "注释"
# 提交
参考文章:一篇文章,教你学会Git

1、从远程获取代码
git clone git clone ssh://git@git.sankuai.com/~duoshilin/test.git
2、查看本地文件状态
git status
绿色:添加到了暂存区
红色:修改过但未添加到暂存区
3、提交代码到远程
①添加到暂存区
git add filename1,filename2
git add .
撤销添加到暂存区
git reset HEAD filename
②提交到本地代码仓库
git commit -m "注释必填"
③提交到远程代码仓库
git push origin 本地分支名:远程分支名(没有可自动创建)
附:可进行强制提交覆盖上次的分支
git commit --amend
git push origin 本地分支名:远程分支名 --force
本地撤销为push前的版本,一般用于push后发现多提交
git reset --soft HEAD~1
git status
修改
git commit -m ""
git push origin 本地分支名:远程分支名 --force
4、分支管理
①创建并切换到新分支
git checkout -b newBranchName
//checkout 的-b参数表示创建并切换,相当于以下两句话
git branch newBranchName
git checkout newBranchName
②查看分支
git branch
5、将本地代码放到一个空的仓库中
cd existing-project
git init
git add --all
git commit -m "Initial Commit"
git remote add origin ssh://git@git.sankuai.com/~duoshilin/test.git
git push origin master
6、版本回退
git log -- 查看commitid
git reset (–mixed) ${commitid}
-- 此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息。
git reset –soft ${commitid}
-- 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可。
git reset –hard ${commitid}
-- 彻底回退到某个版本,本地的源码也会变为上一个版本的内容。
git push origin HEAD --force
网友评论