自动摘要: 仓库管理 建立本地仓库 使用Git前,需要先建立一个仓库(repository)。您可以使用一个已经存在的目录作为Git仓库或创建一个空目录。 ```bash 在当前目录初 ……..
仓库管理 建立本地仓库 使用Git前,需要先建立一个仓库(repository)。您可以使用一个已经存在的目录作为Git仓库或创建一个空目录。
1 2 3 4 5 6 7 8 git init git init [project-name] git init newrepo
从现在开始,我们将假设您在Git仓库根目录下,除非另有说明。
克隆远程仓库 如果希望在当前目录下与网络上存在的仓库同步,可以直接从网络上将仓库克隆下来。并且未来可以直接与网络仓库同步(必须具有权限)。
1 2 3 4 5 6 git [url] git clone http://example.com/www/project.git git clone ssh://example.com/~/www/project.git
新建远程仓库链接 1 2 3 4 git remote add [shortname] [url] git remote add remote-project ssh://example.com/~/www/project.git
查询远程仓库信息 1 2 3 4 5 6 7 8 git remote -v git remote show [remote] git remote show origin
更新远程仓库 修改之后推送到服务器。
1 2 3 4 5 6 7 8 9 10 11 12 git push [remote] [branch] git push http://example.com/www/project.git git push ssh://example.com/~/www/project.git git push [remote] --force git push [remote] --all
更新本地仓库 1 2 3 4 5 6 7 8 9 10 11 12 13 git fetch [remote] git fetch origin git pull [remote] [branch] git pull git pull http://git.example.com/project.git
配置管理 显示配置信息
编辑配置文件 1 2 3 4 5 6 git config -e [--global] git config -e git config -e --global
增加用户名和Email
文件操作 添加新文件到仓库
如果文件发生改变,可以再次使用git add [filename]
继续添加任务文件。
删除仓库里的文件
修改仓库里的文件名称
将文件提交到仓库中 现在我们已经添加了这些文件,我们希望它们能够真正被保存在Git仓库。
为此,我们将它们提交到仓库。
如果需要使用编辑器来编写注释信息,可以直接不加参数。
当我们修改了很多文件,而不想每一个都git add
,想git commit
自动来提交本地修改,我们可以使用-a标识。
1 git commit -a -m "Changed some files"
git commit
命令的-a
选项可将所有发生变化并且已经被 Git 管理的文档 提交到仓库中。
千万注意,-a
不会造成新文件被提交,只能是已经被 Git 管理的文档。
分支管理 查询已有分支
创建新的分支
切换当前的分支
第一个分支,或主分支,被称为”master”。
合并不同分支 对其他分支的更改不会反映在主分支上。如果想将更改提交到主分支,则需切换回master分支,然后使用合并。
删除不需要的分支
标签管理 当新版本上线时,会建立版本标签。Git 的标签是项目里程碑和历史状态关键点的标识,可以根据项目标签来查看历史某一版本的代码,也可以根据项目标签来回滚代码。
查询历史标签
创建本地标签 1 # 新建一个tag在当前commit# 格式git tag [tag]# 示例git tag "v1.0"# 新建一个tag在指定commit# 格式git tag [tag] [commit]# 示例git tag "v0.9" 1df80681f3b8504378bf70a27ca6567b98eec2e5
删除标签 1 # 删除本地tag# 格式git tag -d [tag]# 示例git tag -d "v1.0"# 删除远程tag# 格式git push origin :refs/tags/[tagName]# 示例git push origin :refs/tags/"v1.0"
查看标签对应的日志信息 1 # 查看tag信息# 格式git show [tag]# 示例git show "v1.0"
信息管理 查询文件信息
查询日志信息 1 # 显示当前分支的版本历史git log# 显示commit历史,以及每次commit发生变更的文件git log --stat# 显示所有提交过的用户,按提交次数排序git shortlog -sn# 显示指定文件是什么人在什么时间修改过git blame [file]
状态回滚 工作区回滚 1 # 恢复暂存区的指定文件到工作区# 格式git checkout [file]# 示例git checkout README.md# 恢复某个commit的指定文件到暂存区和工作区# 格式git checkout [commit] [file]# 示例git checkout af592268edd32ce756db5eb128f6904a21504e4d README.md# 恢复暂存区的所有文件到工作区git checkout .
暂存区回滚
提交回滚