Git常用命令整理

在介绍安装和简单使用前,先看一下百度百科中的简介吧:
————————————————————————————————————————

    Git --- The stupid content tracker, 傻瓜内容跟踪器。

    Linux 是这样给我们介绍 Git 的:

    Git 是用于Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。

————————————————————————————————————————

下面我用ubuntu 10.10上的命令为例:(这些命令都是在本地客户端处使用,非服务器操作裸库使用)
(本文中尖括号内包含尖括号都将是描述内容,请在输入实际命令时替换成描述内容所符的内容。)

1、安装:
$ sudo apt-get install git
$ sudo apt-get install gitk#此为安装官方的图形界面,不需要的可以不安装

2、cd到需要管理的代码、文件所在的第一级目录

3、初始化:
$ git init

4、添加当前目录所有内容:
$ git add .

5、查看状态:
$ git status

6、添加commit:
$ git commit -am "first commit."

7、版本对比:
$ git diff

8、查看历史记录:
$ git log

9、分支操作
查看分支:$ git branch
创建分支:$ git branch 分支名称 (注意:请不要在服务端建立分支)
切换分支:$ git checkout 分支名称
删除分支:$ git branch -d 分支名称

10、加入服务器
$ git remote add 用户名@计算机名或IP:~/某个目录

11、推送数据
$ git push master master #本地master推送到远端master
# 如果想快捷的使用git push就推送到默认远端分支master,可以做个一次性设置:
$ git remote add origin <实际的ssl用户名>@<IP地址>:<Git在远端的path>
    # 做完以上设置,以后直接使用git push 就会自动推送到上述设置地址了,但如果要推送到其他分支,还是需要加参数的,这个设置只是相当于一个默认参数而已。

12、接收数据
$ git pull origin master
# 如果想直接使用git pull直接接收,同样需要提前做一个一次性设置(同样也是不能应用多分支pull情况):
$ git branch --set-upstream master origin/master

13、本地库设置个人姓名和邮件
$ git config --global user.name "你的姓名,最好由没有符合和空格的英文字母组成"
$ git config --global user.email <邮件名>@<邮箱服务商后缀>
如果不设置个人信息,提交的信息将不会有更改者信息,这样会加大项目管理的难度。

14、启动图形界面
$ gitk



Git常用命令整理


取得Git仓库

git init   # 初始化一个版本仓库
git clone git@xbc.me:wordpress.git   # Clone远程版本库
git remote add origin git@xbc.me:wordpress.git   # 添加远程版本库origin,语法为 git remote add [shortname] [url]
git remote -v     # 查看远程仓库

提交你的修改

git add .                                   # 添加当前修改的文件到暂存区
git add -u                                  # 如果你自动追踪文件,包括你已经手动删除的,状态为Deleted的文件
git commit –m &quot;你的注释&quot;          # 提交你的修改
git push origin master                      # 推送你的更新到远程服务器,语法为 git push [远程名] [本地分支]:[远程分支]
git status                                  # 查看文件状态
git add readme.txt                          # 跟踪新文件
git rm readme.txt                           # 从当前跟踪列表移除文件,并完全删除
git rm –cached readme.txt                   # 仅在暂存区删除,保留文件在当前目录,不再跟踪
git mv reademe.txt readme                   # 重命名文件
git log                                     # 查看提交的历史记录
git commit --amend                          # 修改最后一次提交注释的,利用–amend参数
git commit –m &quot;add readme.txt&quot;    # 忘记提交某些修改,下面的三条命令只会得到一个提交。
git add readme_forgotten  
git commit –amend
git reset HEAD b                            # 假设你已经使用git add .,将修改过的文件a、b加到暂存区 现在你只想提交a文件,不想提交b文件,应该这样
git checkout –- readme.txt                  # 取消对文件的修改

基本的分支管理

git branch iss53                            # 创建一个分支
git chekcout iss53                          # 切换工作目录到iss53
git chekcout –b iss53                       # 将上面的命令合在一起,创建iss53分支并切换到iss53
git merge iss53                             # 合并iss53分支,当前工作目录为master
git branch –d iss53                         # 合并完成后,没有出现冲突,删除iss53分支
git fetch                                   # 拉去远程仓库的数据,语法为 git fetch [remote-name]
git pull                                    # fetch 会拉去最新的远程仓库数据,但不会自动到当前目录下,要自动合并
git remote show origin                      # 查看远程仓库的信息
git checkout –b dev origin/develop          # 建立本地的dev分支追踪远程仓库的develop分支

git清理历史版本

git clone $project_url

cp .git/config .
rm -rf .git
git init
mv config .git/
git add .
git commit -m "clean history"
git push -f origin master

https://github.com/coding-do/ops_doc/blob/master/Service/git/%E7%94%A8GitLab%E6%90%AD%E5%BB%BA%E8%87%AA%E5%B7%B1%E7%9A%84%E7%A7%81%E6%9C%89GitHub.sh

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/395147.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java使用Redis实现消息队列

近期刷Java面试题刷到了“如何使用Redis实现消息队列”&#xff0c;解答如下&#xff1a; 一般使用 list 结构作为队列&#xff0c; rpush 生产消息&#xff0c; lpop 消费消息。当 lpop 没有消息的时候&#xff0c;要适当sleep 一会再重试。若不使用sleep&#xff0c;则可以用…

应急响应实战笔记02日志分析篇(4)

第4篇:MSSQL日志分析 常见的数据库攻击包括弱口令、SQL注入、提升权限、窃取备份等。对数据库日志进行分析&#xff0c;可以发现攻击行为&#xff0c;进一步还原攻击场景及追溯攻击源。 0x01 MSSQL日志分析 首先&#xff0c;MSSQL数据库应启用日志记录功能&#xff0c;默认配…

error: src refspec main does not match any解决办法

一、问题描述&#xff1a; 用GitHub Actions自动部署Hexo&#xff0c;到了最关键的一步&#xff1b;突然报错&#xff1a;error: src refspec main does not match any 1、错误一&#xff1a; main分支应填写为master分支&#xff1b;但是只改这里也会报其他错误 2、错误二&a…

书生开源大模型训练营-第3讲笔记

5.Langchain和InternLM搭建知识库 5.1环境 还是一样&#xff0c;开发机中创建镜像&#xff0c;以及所需依赖 pip install modelscope1.9.5 pip install transformers4.35.2 pip install streamlit1.24.0 pip install sentencepiece0.1.99 pip install accelerate0.24.15.2模…

亿赛通-数据泄露防护(DLP)44个接口存在远程命令执行漏洞

文章目录 前言声明一、系统简介二、漏洞描述三、影响版本四、漏洞复现五、整改意见 前言 亿赛通-数据泄露防护是一款专门防止您的私人数据资产在分享、存储过程中&#xff0c;被他人非法窃取或使用的安全产品。亿赛通-数据泄露防护(DLP)44个接口存在远程命令执行漏洞。 声明 …

【类与对象 -2】学习类的6个默认成员函数中的构造函数与析构函数

目录 1.类的6个默认成员函数 2.构造函数 2.1概念 2.2特性 3.析构函数 3.1析构函数的概念 3.2特性 1.类的6个默认成员函数 如果一个类中什么成员都没有&#xff0c;简称为空类。 空类中真的什么都没有吗&#xff1f;并不是&#xff0c;任何类在什么都不写时&#xff0c;…

芯片的分类

目录 通用处理器数字信号处理器专用处理器 通用处理器 我们常听说的中央处理器CPU就是一种典型的通用处理器&#xff08;GPP&#xff09;。这种处理器多使用片上系统&#xff08;SoC&#xff09;的设计理念&#xff0c;在处理器上集成各种功能模块&#xff0c;每一种功能都是用…

Authing 身份云入选崔牛会「2024 中国企业服务云图」

近日&#xff0c;B2B 领域知名企业服务平台——崔牛会正式对外发布了「2024 中国企业服务云图」&#xff0c;Authing 身份云凭借在 IDaaS 领域的先进能力和卓越表现&#xff0c;从众多参选企业中脱颖而出&#xff0c;成功入选图谱技术支撑「 IDaaS 」板块&#xff0c;并荣登榜首…

Apache DolphinScheduler数仓任务管理规范

前言&#xff1a; 大数据领域对多种任务都有调度需求&#xff0c;以离线数仓的任务应用最多&#xff0c;许多团队在调研开源产品后&#xff0c;选择Apache DolphinScheduler&#xff08;以下简称DS&#xff09;作为调度场景的技术选型。得益于DS优秀的特性&#xff0c;在对数仓…

个人2024年工作计划与目标:用这个待办计划管理工具

春节的喜庆气氛逐渐散去&#xff0c;取而代之的是新的一年奋斗的号角。开工之际&#xff0c;我深知为自己制定一份2024年的工作计划与目标至关重要。这不仅仅是对未来一年的规划&#xff0c;更是对自己的一份承诺和责任。 坐在电脑前&#xff0c;我开始思考如何着手这份计划。…

1.3_2 中断和异常

文章目录 1.3_2 中断和异常&#xff08;一&#xff09;中断的作用&#xff08;二&#xff09;中断的类型1、内中断2、外中断3、中断分类总结 &#xff08;三&#xff09;中断机制的基本原理 总结 1.3_2 中断和异常 &#xff08;一&#xff09;中断的作用 CPU上会运行两种程序&…

阿里云香港轻量应用服务器网络线路cn2?

阿里云香港轻量应用服务器是什么线路&#xff1f;不是cn2。 阿里云香港轻量服务器是cn2吗&#xff1f;香港轻量服务器不是cn2。阿腾云atengyun.com正好有一台阿里云轻量应用服务器&#xff0c;通过mtr traceroute测试了一下&#xff0c;最后一跳是202.97开头的ip&#xff0c;1…

ssh连接服务器需要子网掩码吗?

IP寻址需要同时知道IP地址和子网掩码&#xff0c;但是在通过ssh连接服务器时&#xff0c;只需要知道IP地址和端口号就可以了&#xff0c;ssh通讯为什么不需要子网掩码呢。在不知道子网掩码的前提下&#xff0c;可以正确找到IP对应的主机吗&#xff1f; 不需要&#xff0c;SSH&a…

【C++】中类的6个默认成员函数 取地址及const成员函数 学习运算符重载 【实现一个日期类】

文章目录 一、【C】赋值运算符重载1.1 运算符重载【引入】1.2 运算符重载1.3 赋值运算符重载1.4 赋值 二、日期类的实现2.1 判断小于2.2 判断等于2.3 判断小于等于2.4 判断大于2.5 判断大于等于2.6 判断不等于2.7 日期加等天数2.8 获取月份天数2.9 日期加天数2.9.1 日期减等天数…

LeetCode 0590. N 叉树的后序遍历:深度优先搜索(DFS)

【LetMeFly】590.N 叉树的后序遍历&#xff1a;深度优先搜索(DFS) 力扣题目链接&#xff1a;https://leetcode.cn/problems/n-ary-tree-postorder-traversal/ 给定一个 n 叉树的根节点 root &#xff0c;返回 其节点值的 后序遍历 。 n 叉树 在输入中按层序遍历进行序列化表…

C语言字符串函数strtok

注意&#xff1a; 该函数会将改变原始字符串 str&#xff0c;使其所包含的所有分隔符变成结束标记 ‘\0’ 。由于该函数需要更改字符串 str&#xff0c;因此 str 指向的内存必须是可写的。首次调用时 str 指向原始字符串&#xff0c;此后每次调用 str 用 NULL 代替。示例&#…

Ubuntu本地安装code-server结合内网穿透实现安卓平板远程写代码

文章目录 1.ubuntu本地安装code-server2. 安装cpolar内网穿透3. 创建隧道映射本地端口4. 安卓平板测试访问5.固定域名公网地址6.结语 1.ubuntu本地安装code-server 准备一台虚拟机,Ubuntu或者centos都可以&#xff0c;这里以VMwhere ubuntu系统为例 下载code server服务,浏览器…

Leetcode 283.移动零

给定一个数组 nums&#xff0c;编写一个函数将所有 0 移动到数组的末尾&#xff0c;同时保持非零元素的相对顺序。 请注意 &#xff0c;必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0]示例 2: 输入: nums [0] 输出: […

来了解AI自动直播带货新玩法!普通人也能轻松上手!

抖捧AI实景自动直播系统&#xff0c;以低成本常态化高效率的直播方式&#xff0c;为进入直播间的用户打造了更真实的体验&#xff0c;更帮助了大量的实体商家降低自播的成本&#xff0c;实现降本增效&#xff0c;接下来看看抖捧最新的餐饮休娱案例及玩法&#xff0c;每天直播八…

实用工具推荐

可以提高你工作效率的工具 SnipasteSnipaste Snipaste Snipaste
最新文章