git基础-01
发布日期:2021-06-29 12:06:54 浏览次数:4 分类:技术文章

本文共 5743 字,大约阅读时间需要 19 分钟。

获取帮助

若你使用 Git 时需要获取帮助,有三种等价的方法可以找到 Git 命令的综合手册(manpage):

$ git help 
$ git
--help$ man git-

例如,要想获得 git config 命令的手册,执行

$ git help config

这些命令很棒,因为你随时随地可以使用而无需联网。 如果你觉得手册或者本书的内容还不够用,你可以尝试在 Freenode IRC 服务器 上的 #git#github 频道寻求帮助。 这些频道经常有上百人在线,他们都精通 Git 并且乐于助人。

此外,如果你不需要全面的手册,只需要可用选项的快速参考,那么可以用 -h 选项获得更简明的 “help” 输出:

git配置

# C:\Program Files\Git\etc\gitconfig	系统# C:\Users\zmj\.gitconfig	用户git config -lgit config --system --listgit config --global -l$ git config --global user.name "[name]"对你的commit操作设置关联的用户名$ git config --global user.email "[email address]"对你的commit操作设置关联的邮箱地址$ git config --global color.ui auto启用有帮助的彩色命令行输出git config --global user.name "钟马俊"git config --global user.email 674495630@qq.com

忽略文件

在GIT项目中可以在项目根目录添加**.gitignore**文件的方式,规定相应的忽略规则,用来管理当前项目中的文件的忽略行为。.gitignore 文件是可以提交到公有仓库中,这就为该项目下的所有开发者都共享一套定义好的忽略规则。在.gitignore 文件中,遵循相应的语法,在每一行指定一个忽略规则。.gitignore忽略规则简单说明file            表示忽略file文件*.a             表示忽略所有 .a 结尾的文件!lib.a          表示但lib.a除外build/          表示忽略 build/目录下的所有文件,过滤整个build文件夹;

创建创库

当着手于一个新的仓库时,你只需创建一次。要么在本地创建,然后推送到 GitHub;要么通过 clone 一个现有仓库。$ git initgit init [name]在使用过 git init 命令后,使用以下命令将本地仓库与一个 GitHub 上的空仓库连接起来:$ git remote add origin 
将现有目录转换为一个 Git 仓库$ git clone
Clone(下载)一个已存在于 GitHub 上的仓库,包括所有的文件、分支和提交(commits)

基本操作

  • 添加到暂存区
# 添加到暂存区use "git add 
..." to include in what will be committedgit add <[file]|.|*>
  • 删除
# 从工作区和暂存区删除git rm -f  
...# 从暂存区删除# use "git rm --cached
..." to unstage# use "git restore --staged
..." to unstagegit restore --staged
...git rm --cached
...git reset head
  • 撤销工作区的更改
# use "git add 
..." to update what will be committed# 撤销工作区的更改# use "git restore
..." to discard changes in working directorygit restore
...
  • 移动或重命名
# 重命名git mv 
  • 提交
# commitgit commit -m 
git commit -a -m
  • checkout将暂存区或者某个commit点文件恢复到工作区
git checkout [commit] -- [file]e.g. 将a.jpg文件恢复,不写commit表示恢复最新保存的文件内容git checkout  --  a.jpg
  • 回退版本
#  git reset 命令git reset 命令用于回退版本,可以指定退回某一次提交的版本。git reset 命令语法格式如下:git reset [--soft | --mixed | --hard] [HEAD]--mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。git reset  [HEAD] # 实例:$ git reset HEAD^            # 回退所有内容到上一个版本  $ git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本  $ git  reset  052e           # 回退到指定版本--soft 参数用于回退到某个版本:git reset --soft HEAD# 实例:$ git reset --soft HEAD~3 # 回退上上上一个版本--hard 参数撤销工作区中所有未提交的修改内容,将暂存区与工作区都回到上一次版本,并删除之前的所有信息提交:git reset --hard HEAD# 实例:$ git reset –hard HEAD~3  # 回退上上上一个版本  $ git reset –hard bae128  # 回退到某个版本回退点之前的所有信息。 $ git reset --hard origin/master    # 将本地的状态回退到和远程的一样 注意:谨慎使用 –hard 参数,它会删除回退点之前的所有信息。HEAD 说明:HEAD 表示当前版本HEAD^ 上一个版本HEAD^^ 上上一个版本HEAD^^^ 上上上一个版本以此类推...可以使用 ~数字表示HEAD~0 表示当前版本HEAD~1 上一个版本HEAD^2 上上一个版本HEAD^3 上上上一个版本以此类推...
  • 记录
# 查看提交记录git loggit log --onelinegit reflog
  • 标签
# tag标签: 在项目的重要commit位置添加快照,保存当时的工作状态,一般用于版本的迭代。git  tag  [tag_name] [commit_id] -m  [message]说明: commit_id可以不写则默认标签表示最新的commit_id位置,message也可以不写,但是最好添加。e.g. 在最新的commit处添加标签v1.0git tag v1.0 -m '版本1'* 查看标签 git tag  查看标签列表 git show [tag_name]  查看标签详细信息* 去往某个标签节点git reset --hard [tag]* 删除标签git tag -d  [tag]
  • 保存工作区
* 保存工作区内容    git stash save [message]    说明: 将工作区未提交的修改封存,让工作区回到修改前的状态* 查看工作区列表    git stash  list    说明:最新保存的工作区在最上面* 应用某个工作区    选择工作区之前,必须保证当前工作区是干净的    git stash  apply  [stash@{
n}]* 删除工作区 git stash drop [stash@{
n}] 删除某一个工作区 git stash clear 删除所有保存的工作区
  • 分支
# branchgit branch	#列出分支$ git branch [branch-name]创建一个新分支$ git checkout [branch-name]切换到指定分支并更新工作目录(working directory)git checkout -b [branck-name]$ git merge [branch]将指定分支的历史合并到当前分支。这通常在拉取请求(PR)中完成,但也是一个重要的 Git 操作。$ git branch -d [branch-name]删除指定分支git merge 
#合并到当前分支
  • checkout
当执行 git checkout . 或者 git checkout -- 
命令时,会用暂存区全部或指定的文件替换工作区的文件。这个操作很危险,会清除工作区中未添加到暂存区的改动。当执行 git checkout HEAD . 或者 git checkout HEAD
命令时,会用 HEAD 指向的 master 分支中的全部或者部分文件替换暂存区和以及工作区中的文件。这个命令也是极具危险性的,因为不但会清除工作区中未提交的改动,也会清除暂存区中未提交的改动。
  • remote
# remote -v 并列出urlgit remote -v$ git remote add origin git@github.com:tianqixin/runoob-git-test.git$ git push -u origin mastergit remote rm name  # 删除远程仓库git remote rename old_name new_name  # 修改仓库名
  • pull
git pull 命令用于从远程获取代码并合并本地的版本。git pull 其实就是 git fetch 和 git merge FETCH_HEAD 的简写。 命令格式如下:git pull 
<远程主机名>
<远程分支名>
:
<本地分支名>
实例更新操作:$ git pull$ git pull origin将远程主机 origin 的 master 分支拉取过来,与本地的 brantest 分支合并。git pull origin master:brantest如果远程分支是与当前分支合并,则冒号后面的部分可以省略。git pull origin master
  • push
git push 命用于从将本地的分支版本上传到远程并合并。命令格式如下:git push 
<远程主机名>
<本地分支名>
:
<远程分支名>
如果本地分支名与远程分支名相同,则可以省略冒号:git push
<远程主机名>
<本地分支名>
实例以下命令将本地的 master 分支推送到 origin 主机的 master 分支。$ git push origin master相等于:$ git push origin master:master如果本地版本与远程版本有差异,但又要强制推送可以使用 --force 参数:git push --force origin master删除主机但分支可以使用 --delete 参数,以下命令表示删除 origin 主机的 master 分支:git push origin --delete mastergit push origin [tag] 推送一个本地标签到远程 git push origin --tags 推送所有本地所有标签到远程git push origin --delete tag [tagname] 删除向远程仓库推送的标签

大文件上传

安装 Git LFS

根据系统环境将 git - lfs 安装到本机。

Windows

# 下载安装 Windows installerhttps://github.com/github/git-lfs/releases# 运行 windows installer

开启 LFS 功能

首先,到达指定 git 项目文件夹,执行安装命令,开启 lfs 功能。

$ cd xxx# 只需执行一次即可,即可开启 lfs 功能$ git lfs install 复制代码

其次,选择您希望 Git LFS 管理的文件类型,默认会生成一个 .gitattributes 文件。

# 此处建议此种格式,可以统一关联 .zip 类型的文件(具体文件类型,视项目而定)$ git lfs track "* .zip"

ses

运行 windows installer

> 开启 LFS 功能首先,到达指定 `git` 项目文件夹,执行安装命令,开启 `lfs` 功能。```shell$ cd xxx# 只需执行一次即可,即可开启 lfs 功能$ git lfs install 复制代码

其次,选择您希望 Git LFS 管理的文件类型,默认会生成一个 .gitattributes 文件。

# 此处建议此种格式,可以统一关联 .zip 类型的文件(具体文件类型,视项目而定)$ git lfs track "* .zip"

转载地址:https://blog.csdn.net/z_202041/article/details/117913629 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mysql-总结
下一篇:git基础

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月06日 08时23分54秒