git常用命令

简介:

创建新仓库

创建新文件夹,打开,然后执行 
git init
以创建新的 git 仓库。

检出仓库

执行如下命令以创建一个本地仓库的克隆版本:
git clone /path/to/repository 如果是远端服务器上的仓库,你的命令会是这个样子: git clone username@host:/path/to/repository

工作流

你的本地仓库由 git 维护的三棵“树”组成。第一个是你的 `工作目录`,它持有实际文件;第二个是 `缓存区(Index)`,它像个缓存区域,临时保存你的改动;最后是 `HEAD`,指向你最近一次提交后的结果。

添加与提交

你可以计划改动(把它们添加到缓存区),使用如下命令:
git add <filename>
git add * 这是 git 基本工作流程的第一步;使用如下命令以实际提交改动: git commit -m "代码提交信息" 现在,你的改动已经提交到了 HEAD,但是还没到你的远端仓库。

推送改动

你的改动现在已经在本地仓库的 HEAD 中了。执行如下命令以将这些改动提交到远端仓库:
git push origin master
可以把 master 换成你想要推送的任何分支。 如果你还没有克隆现有仓库,并欲将你的仓库连接到某个远程服务器,你可以使用如下命令添加: git remote add origin <server> 如此你就能够将你的改动推送到所添加的服务器上去了。

分支

分支是用来将特性开发绝缘开来的。在你创建仓库的时候,master 是“默认的”。在其他分支上进行开发,完成后再将它们合并到主分支上

创建一个叫做“feature_x”的分支,并切换过去: git checkout -b feature_x 切换回主分支: git checkout master 再把新建的分支删掉: git branch -d feature_x 除非你将分支推送到远端仓库,不然该分支就是 不为他人所见的: git push origin <branch>

更新与合并

要更新你的本地仓库至最新改动,执行:
git pull
以在你的工作目录中 获取(fetch  合并(merge 远端的改动。 要合并其他分支到你的当前分支(例如 master),执行: git merge <branch> 两种情况下,git 都会尝试去自动合并改动。不幸的是,自动合并并非次次都能成功,并可能导致 冲突(conflicts)。 这时候就需要你修改这些文件来人肉合并这些 冲突(conflicts 了。改完之后,你需要执行如下命令以将它们标记为合并成功: git add <filename> 在合并改动之前,也可以使用如下命令查看: git diff <source_branch> <target_branch>

标签

在软件发布时创建标签,是被推荐的。这是个旧有概念,在 SVN 中也有。可以执行如下命令以创建一个叫做 1.0.0 的标签: git tag 1.0.0 1b2e1d63ff 1b2e1d63ff 是你想要标记的提交 ID 的前 10 位字符。使用如下命令获取提交 ID git log 你也可以用该提交 ID 的少一些的前几位,只要它是唯一的

替换本地改动

假如你做错事(自然,这是不可能的),你可以使用如下命令替换掉本地改动:
git checkout -- <filename> 此命令会使用 HEAD 中的最新内容替换掉你的工作目录中的文件。已添加到缓存区的改动,以及新文件,都不受影响。 假如你想要丢弃你所有的本地改动与提交,可以到服务器上获取最新的版本并将你本地主分支指向到它: git fetch origin git reset --hard origin/master

有用的贴士

内建的图形化 git
gitk
彩色的 git 输出: git config color.ui true 显示历史记录时,只显示一行注释信息: git config format.pretty oneline 交互地添加文件至缓存区: git add -i

git配置全局信息

git config --global user.name "9958" git config --global user.email "694178563@qq.com"

git生成public_key

ssh-keygen -t rsa -C "694178563@qq.com"

git克隆,指定维度

git clone git://xxoo --depth 1

git添加远程库

git remote add origin git@github.com:9958/helloword.git 添加远程库 git push -u origin master 强推本地库

git添加一个空目录,即只同步本空目录

# Ignore everything in this directory
*
# Except this file !.gitignore

git恢复指定文件的历史版本

#查看相应版本号
git log --pretty=oneline 指定文件 #重置版本号 git reset git版本号 指定文件 #检出指定文件 git checkout -- 指定文件 7、查看版本详细日志 git show git版本号

输出最后一次提交的改变

这个命令,我经常使用它 来发送其他没有使用git的人来检查或者集成所修改的。它会输出最近提交的修改类容到一个zip文件中。

git archive -o ../updated.zip HEAD $(git diff --name-only HEAD^)

仅回退commit到某个版本

git reset --soft git版本号 git log --all 可以查看reset之前的log gi



本文转自莫水千流博客园博客,原文链接:http://www.cnblogs.com/zhoug2020/p/5789061.html,如需转载请自行联系原作者
相关文章
|
12天前
|
缓存 数据可视化 网络安全
Git命令大全
Git命令大全
45 1
|
16天前
|
开发工具 git
Git教程:深入了解删除分支的命令
【4月更文挑战第3天】
37 0
Git教程:深入了解删除分支的命令
|
1月前
|
存储 Shell Linux
【Shell 命令集合 文件管理】Linux git命令使用教程
【Shell 命令集合 文件管理】Linux git命令使用教程
34 0
|
1月前
|
开发工具 git
git常用命令整理
git常用命令整理
13 0
|
22天前
|
开发工具 git 开发者
Git常用命令大全:让你轻松驾驭版本控制
Git命令速查:`git init`新建仓库,`git clone`克隆,`git add`入暂存区,`git commit -m`提交,`git status`查看状态,`git log`查看历史,`git branch`创建分支,`git checkout`切换,`git merge`合并,`git pull`拉取更新,`git push`推送,`git remote -v`查看远程,`git checkout --`撤销本地修改,`git reset HEAD`取消暂存,`git reset --hard`回退版本。掌握这些,提升代码管理效率!
18 0
|
1天前
|
存储 Linux 开发工具
Git 分布式版本控制系统基本概念和操作命令
Git 分布式版本控制系统基本概念和操作命令
7 0
|
3天前
|
算法 Java BI
云效产品使用报错问题之平台上导出的统计数据和 git 中使用命令导出的数据统计都对不上,如何解决
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
|
29天前
|
算法 开发工具 git
【git 实用指南】git 增加 本地代码 git add 相关命令和复杂情况需求
【git 实用指南】git 增加 本地代码 git add 相关命令和复杂情况需求
92 0
|
1月前
|
Shell Linux 开发工具
【Shell 命令集合 系统管理 】Linux 查看当前Git仓库的提交历史 gitps命令 使用指南
【Shell 命令集合 系统管理 】Linux 查看当前Git仓库的提交历史 gitps命令 使用指南
16 0
|
1月前
|
开发工具 git
git命令使用大全
git命令使用大全
20 1

热门文章

最新文章

相关实验场景

更多