git命令

1、配置用户配置文件

git config命令配置git配置文件。至少可以设置的是用户名和电子邮件地址。Git允许用户全局或基于项目配置这些策略。

$ git config user.name "273992029"
$ git config user.email root@linuxidc.net

添加–global选项以全局设置这些策略。

$ git config --global user.name "273992029"
$ git config --global user.email root@linuxidc.net

2、初始化Git仓库

$ git init

3、添加项目文件

//git add file
$ git add *

4、验证添加的文件

使用git status命令验证将在下一次提交期间暂存的文件。它将显示所有新文件或已更改的文件。

$ git status

5、提交对存储库的更改

提交更改时,git会捕获代码库的快照。这就是git跟踪更改并提供版本控制的方式,
使用-m选项,则可以直接添加描述。

$  git commit -m "Linuxidc Commit"

6.显示日志

只要想查看对存储库所做的更改,就可以查看日志。使用git log命令执行此操作即可。

$ git log               //显示有关git提交的一般信息
$ git log --file        //查看特定文件中的更改

7、验证项目分支

git分支代表项目中的独立开发线。使用git branch命令非常轻松地检查当前分支。它会显示正在开发新功能或修改较旧功能的当前活动分支。

$ git branch
* master               //输出将使用星号(*)标记当前分支

8、重置项目分支

将当前存储库和工作目录重置为已知状态。git reset命令将把HEAD引用调整为特定的提交,并相应地更新索引以匹配该特定的提交。

$ git reset
$ git reset --soft   //当前分支执行软重置
$ git reset --hard  //执行硬重置

9、添加一个新分支
不能使用相同的分支名称添加多个分支。将导致致命错误

$ git branch new-linuxidc   //新创建的分支,为new-linuxidc
$ git branch       //验证添加是否成功

10、在分支之间切换
git branch命令来验证这一点

$ git checkout new-linuxidc      //分支已成功切换 new-linuxidc
$ git branch      //验证这一点

11、删除项目分支

成功开发新功能后,希望它们添加到git master分支中。完成此操作后,可以完全删除该分支。git命令的-D选项使我们可以很容易地做到这一点。
离开分支才能成功删除它。否则git会抛出错误

$ git checkout master  //切换到分支 'master'
$ git branch -D new-linuxidc    //已删除分支 new-linuxidc

12、检查提交,树和文件之间的差异

git diff命令允许我们在提交之间以及在blob对象之间查看两个多个文件(工作树和索引树)的更改

git diff     //显示工作树和索引树之间的更改
git diff new-linuxidc master  //显示master分支和new-linuxidc分支之间更改

13、合并两个分支

$ git merge fixes new-linuxidc
$ git merge -s ours obsolete
$ git merge --no-commit main

第一个合并两个分支的新功能并进行修复以创建一个分支。
第二个使用我们的策略将obsol]分支合并到当前开发分支。
第三个将分支main合并到当前分支,但禁用自动提交。

14、还原现有提交

有时,可能会决定不再需要某些提交。在这种情况下,还原这些提交比完全修改分支更好。

$ git revert 482b4bebada278b29001338411de7c42743065d5
$ git revert HEAD~3

第一个示例将还原由提交ID 482b4bebada278b29001338411de7c42743065d5引入的更改。
第二个示例使HEAD中的第四个最后提交重复执行,并执行一个新的提交。

15、隐藏工作目录

当陷入混乱情况时,开发人员通常使用此命令。它允许他们存储不整洁的工作流程,并稍后再解决。使用存储列表命令查看存储列表。

git stash
git stash list

16、克隆仓库
将所述项目下载到系统的test-dir目录中。

git clone <GIT:URL>
git clone git://example.com/git.git/ test-dir

17、提取新更新
此命令将使用协作者所做的任何新更新来更新项目的本地版本。切记在获取最新更新之前将工作目录更改为项目目录。

git pull

18、推送您的更新

git push和git commit之间的区别在于,当您提交某些更改时,它们将被添加到本地存储库而不是远程存储库中。

git push    //更新添加到项目的远程存储库

19、显示远程存储库

git remote命令使我们可以从Linux终端方便地管理一组跟踪的存储库。您可以使用它仅克隆某些选定的分支。

git remote   //显示当前配置的所有远程存储库
git remote --verbose    //显示有关此信息的详细信息。

20、连接到远程仓库

设置远程仓库,以便将本地仓库连接到远程服务器。

$ git remote add origin <服务器>

上面的命令会将“ origin”作为远程名称添加到服务器。您可以通过浏览GitHub存储库的Source子选项卡来发现服务器URL 。

21、将标签添加到您的项目

标签使您可以标记开源项目中的重要事件。

 git tag 1.0.0 new-linuxidc
git tag 1.0.0 new-linuxidc

此命令将标签1.0.0添加到特定的提交。您可以使用以下命令获取commit-id(new-linuxidc)。

 git log

commit 482b4bebada278b29001338411de7c42743065d5 (HEAD -> new-linuxidc, tag: 1.0.0, master)

将标签推送到您的远程仓库中。
您需要明确指定–tags选项。否则,标签只会添加到您的本地仓库中,而不会添加到远程仓库中。

$ git push origin --tags

22、获取远程数据
检查远程代码库最新进度而又不破坏项目自己版本的绝佳方法。一旦确定所有新数据都可以使用,只需将它们合并到本地分支即可。

$ git fetch origin

23、恢复未提交的更改

git restore命令允许开发人员恢复其项目中所有未提交的更改。这些是您对项目的工作版本或本地索引中的内容所做的更改。您可以使用此命令来还原工作副本中的更改或索引中的更改,或者同时执行这两个操作。

$ git restore --staged linuxidc1.py
$ git restore --source=HEAD --staged --worktree linuxidc1.py

第一个命令将还原索引中的文件linuxidc1.py
第二个命令将还原索引和项目的当前工作目录。

24、删除文件
有时,您可能希望从工作树或项目索引中完全删除一些文件。但是,此命令不会从您的工作目录中删除指定的文件

$ git rm *.py   //从工作树和索引中删除所有py文件
$ git rm -r dir/    //从dir/目录中删除所有内容
$ git rm --cached *.py   //从索引而不是工作树中删除所有py文件。

25、移动或重命名文件

您可以使用git移动或重命名文件,就像使用Linux mv命令一样。

git mv linuxidc1.py linuxidc11.py

上面的命令只是执行以下Linux操作。

$ mv test.py new-test.py
$ git add new-test.py
$ rm test.py

因此,您可以使用git mv命令来避免输入大量额外的Linux终端命令。

26、清理未跟踪的文件

未跟踪的文件是不在git版本控制系统下的文件

$ git clean

fatal: clean.requireForce 默认为 true 且未提供 -i、-n 或 -f 选项,拒绝执行清理动作

上面的命令失败,因为这是在我的系统中配置git的方式。您可以通过添加-n,-i或-f选项来解决此问题。

27、优化本地仓库

用于垃圾收集,将帮助您减小本地仓库的大小。
清理了本地仓库中所有不必要的文件

$ git gc

28、存档本地仓库

将仓库存储在名为test的tar文件中。如果需要,可以省略–format选项。在这种情况下,git将尝试从名称中推断出存档格式。此命令还有更多选项可用。

$ git archive --output=test --format=tar master

29、搜索模式

$ git grep -iw 'import' master  //在master分支中显示所有包含“ import”的行
$ git grep 'import' $(git rev-list --all)  //在所有提交和分支中搜索给定的模式

30、管理工作树

开发人员可以在git中使用多个工作树。当签出多个项目分支时,这很有用。检查以下git命令,以了解如何在git中管理工作树。

$ git worktree list    //显示当前的工作树
$ git worktree add new-branch  //添加一个新的“链接的工作树”
$ git worktree remove new-branch   //删除该树
$ git worktree prune   //允许修剪工作树信息

31、删除未跟踪的对象

第一条命令不会删除任何内容,只会显示修剪后会删除的对象。第二条命令在删除期间提供详细的输出以及进度报告。您可以使用prune命令和git gc命令一起优化仓库。

$ git prune --dry-run  //
$ git prune --verbose --progress

32、打包未归档文件

在git中,包是单个压缩对象的集合。Git对这些对象应用增量压缩并将其存储在单个文件中。它们用于减少Linux文件系统或镜像系统上的负载。git repack命令允许用户创建新的包,这些包由不位于现有包内的对象组成。

可以将此命令与gic gc和git prune一起使用,以优化git仓库

$ git repack

33、计算解包的对象数量

查看解包对象的数量及其消耗的磁盘空间。

命令来确定是否应该重新打包git。您可以添加–verbose标志以获取详细信息,

$ git count-objects

34、验证对象数据库

此命令来验证连接性并执行对象的完整性检查。

$ git fsck  //显示在对象数据库中找到的所有损坏的对象。它是查找丢失或不良对象的最有用的git命令之一

35、显示每次提交的更改

将使用提交日志和diff输出显示信息。与git log命令非常相似。

$ git whatchanged

36、汇总日志信息

查看历史记录。

添加–email选项将显示每个作者的电子邮件。该-summary选项会抑制通常输出,只会显示提交的数目

$ git shortlog
$ git shortlog --email --summary

37、管理配置选项

git有大量可用的配置选项。您可以使用git config命令查询,设置或替换各种选项。可以对特定仓库和全局配置进行更改。

$ git config --list
$ git config --help

38、Git帮助

$ git help
$ git --help
$ git <command> --help
$ git commit --help

39、手册页

手册页包含有关git版本控制系统及其所有子命令的深入信息

$ man git
$ man git commit

40、显示版本信息

$ git --version
<think>好的,我现在需要帮助用户了解Git命令的使用教程和常见命令列表。首先,用户提到想学习Git命令的用法,可能需要基础命令的介绍和一些实际例子。根据用户提供的引用内容,我应该优先包含git config、git add、git commit、git push这些基本命令,因为这些在引用中都有提到。特别是引用1详细介绍了git config和git add的使用,引用3提到了git push的简化操作。 接下来,我需要确保结构清晰,按照用户的要求分步骤讲解。可能的结构是:安装配置、基本工作流程、分支管理、远程仓库操作、其他常用命令。每个部分下给出具体的命令和示例,比如在配置部分,引用1和引用2都提到了git config的使用,包括设置用户名、邮箱和查看配置列表,这些都需要包含进去。 另外,用户示例中的Python代码块提醒我需要用代码块格式展示Git命令,但注意用户的问题是关于Git的,所以应该用命令行代码块,如```bash。同时,需要检查LaTeX格式是否正确,不过这个问题中可能用到的数学公式不多,但如果有的话,比如在解释某些概念时,可能需要使用行内公式,比如$ git add $这样的变量?不过Git命令本身不需要数学公式,所以可能不用,但需要留意系统指令中的要求。 用户还要求生成相关问题,我需要根据内容提出相关问题,比如如何撤销提交、分支管理策略等,这些是用户可能进一步想了解的。 需要确保引用的正确使用,每个引用对应的内容要准确。例如,引用1提到git add .,引用3提到git push -u origin master,这些都要在相应部分标注引用标识。同时,用户提供的引用中没有提到git commit、git status等命令,但这些属于常见命令,可能需要补充,但因为没有引用来源,可能需要避免引用标记,或者如果用户提供的引用中确实没有,可能需要不标注引用,但根据用户给出的引用,只能使用现有的三个引用。 不过,用户提供的引用中,引用1提到了git config和git add,引用2是git config --list,引用3是git push。所以当提到这些特定命令时,添加对应的引用标记,其他命令git commit、git status可能没有引用来源,就不添加引用标识。 最后,生成的相关问题应该围绕Git的进一步学习,比如配置管理、撤销操作、分支合并冲突解决、.gitignore文件使用等,这些都是用户可能感兴趣的点。 现在开始组织内容: 1. 安装与配置:根据引用1和2,介绍git config设置用户信息,查看配置。 2. 基本工作流程:git init, git add(引用1), git commit, git status, git log。 3. 分支管理:git branch, git checkout, git merge。 4. 远程仓库:git remote add, git push(引用3), git pull。 5. 其他命令git clone, .gitignore, git reset(可能没有引用来源,但常见)。 在写作时,确保每个命令的示例正确,比如git add . 来自引用1,要标注[^1]。git config --list来自引用2,标注[^2]。git push -u来自引用3,标注[^3]。 可能还需要检查是否有其他命令在引用中提到,但根据提供的三个引用,主要涉及config、add、push。因此,其他命令可能没有引用来源,但用户的问题需要常见命令列表,所以必须包含,但引用标记只用在对应的部分。 最后生成相关问题,如如何撤销提交、解决合并冲突、配置忽略文件等。</think>### Git 常用命令使用教程 Git 是分布式版本控制系统,以下是基础命令和常见用法: --- #### 一、安装与配置 1. **配置用户信息**(提交时标识身份) ```bash git config --global user.name "你的用户名" git config --global user.email "你的邮箱" ``` 此配置会保存在全局文件(如 `~/.gitconfig`)。 2. **查看当前配置** ```bash git config --list ``` 可检查所有生效的配置项。 --- #### 二、基本工作流程 1. **初始化仓库** ```bash git init ``` 2. **添加文件到暂存区** ```bash git add <文件名> # 添加单个文件 git add . # 添加所有修改和新文件 ``` 3. **提交更改** ```bash git commit -m "提交说明" ``` 4. **查看状态与日志** ```bash git status # 查看工作区和暂存区状态 git log # 查看提交历史 ``` --- #### 三、分支管理 1. **创建与切换分支** ```bash git branch <分支名> # 创建分支 git checkout <分支名> # 切换分支 git checkout -b <分支名> # 创建并切换 ``` 2. **合并分支** ```bash git merge <目标分支> ``` --- #### 四、远程仓库操作 1. **关联远程仓库** ```bash git remote add origin <仓库URL> ``` 2. **推送代码** ```bash git push -u origin master # 首次推送需指定分支[^3] git push # 后续推送可简化 ``` 3. **拉取更新** ```bash git pull origin master ``` --- #### 五、其他常用命令 | 命令 | 用途 | |------|------| | `git clone <仓库URL>` | 克隆远程仓库到本地 | | `git reset <文件>` | 撤销暂存区的修改 | | `git diff` | 查看文件差异 | ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值