git常用命令(git github ssh)

这篇具有很好参考价值的文章主要介绍了git常用命令(git github ssh)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、语法说明

被”< >“和"[ ]“包含起来的内容表示用户自己选定的参数。但”< >“是要求用户必须输入的,而”[ ]"表示用户可以根据自己的需要选择输入。
比如git reset的语法是这样的:

git reset commit <commitid> --[option]

其中commitid指的是commit id,可以理解为每一提交到本地仓库之后该仓库状态的ID,利用这个ID我们可以快速定位到某个状态。
那么以下两个种方式都是合理的:

git reset commit 7b0dcac
git reset commit 7b0dcac --soft

2、本地仓库相关操作

建立一个git文件(git init)

用git Bash进入一个新的文件夹,输入以下命令可以建立一个git文件。

git init

查看一下是否有.git文件
git常用命令(git github ssh),develop tools,git,github,ssh

把工作区的文件添加到暂存区(git add)

git add <object_file>

把暂存区的文件添加到本地仓库(git commit)

方法一:提交之后再进入vim编辑器写入这次提交的备注

git commit

方法一:提交的同时写入备注

git commit -m <"any information you wanna write.">

查看暂存区和本地仓库中的文件(git ls-files)

git ls-files

查看文件夹下所有文件的状态(git status)

git status

查看版本库中的提交记录(git log)

版本库即本地仓库。
方法一:直接查看提交记录的完整信息

git log

git常用命令(git github ssh),develop tools,git,github,ssh
箭头所指的是每次提交更新之后本地仓库状态的哈希值,也可以理解该时间点本地仓库状态对应的ID,用的时候经常拿一部分来用即可。
方法二:查看部分重要信息

git log --oneline

git常用命令(git github ssh),develop tools,git,github,ssh
红框内是哈希值的前N位,一般用这个来对应每一个的提交信息即可。

恢复的文件(git checkout)

  1. 在工作区中的文件被修改之后,却想要恢复到修改前的状态,但还未提交到暂存区和本地仓库。
 git checkout <object_file>

注:git checkout默认只是恢复到上一次的状态,如果想要恢复到更久以前的状态,请继续往下看。再者,这一小节的修改,不仅指修改了文件,还可以指文件被删除了。

  1. 在工作区中的文件被修改之后,却想要恢复到修改前的状态,但已经提交到暂存区和本地仓库。
  2. 在工作区中的文件被修改之后,却想要恢复到以前的某个状态,但已经提交到暂存区和本地仓库。
git checkout commit <commitid> <object_file>

注:这里的ID即是第N次提交记录的哈希值。该指令可以把object_file文件恢复到第N次提交时候的状态。

版本退回(git reset)

版本退回有三种方式,分别是soft, hard, mixed。其中的mixed也是默认(default)的方式。
默认的方式下,本地仓库的记录会退回到之前的某个时间点。但工作区和暂存区保持不变。

git reset <commitid>

soft的方式下,本地仓库和暂存区的状态会退回到之前的某个时间点。但工作区保持不变。

git reset <commitid> --soft

soft的方式下,本地仓库、暂存区和工作区的状态都会退回到之前的某个时间点。

git reset <commitid> --hard

用git reset --hard,打个比方。比如你在早上8:00向本地仓库提交了一次更新,版本库记录这次更新后的状态ID为123456。接着你继续工作到中午12:00,但此时你发现你早上的工作方向全错了,想要恢复早上8:00时的文件状态,就可以使用git reset 123456 --hard。

查看本地仓库文件和暂存区文件中的内容(git show)

查看暂存区中文件的内容。

git show :<object_file>

查看本地仓库里某次状态下的文件内容。

git show <commitid>:<object_file>

文件差异对比(git diff)

1、对比工作区和暂存区文件的差异

git diff [object_file]

可以看到这里的object_file是被”[ ]“包含起来的,说明这个参数可写也可不写,不写的话表示对比所有文件的差异,写则表示只对比某个文件的差异。
2、对比工作区和本地仓库文件内容之间的差异

git diff <commitid> [oject_file]

3、对比本地仓库中两个版本的差异

git diff <commitid> <commitid> [object_file] 

4、对比两个文件之间的差异

git diff <object_file_1> <object_file_2>

忽略文件(.gitignore)

在一个项目中,经常会生成一些中间文件,比如C++在Windows编译之后有一个.exe文件,而这些文件我们并不希望它被上传到本地仓库中。那么,我们就可以利用.gitignore文件去隐藏那些我们不希望上传的文件。
第一步:创建一个.gitignore文件

vim .gitignore

第二步:在.gitignore文件里写入我们希望被忽略的文件名。(比如所有的.exe文件)

echo *.exe -> .gitignore

3、SSH简介(密钥,GitHub)

在传统的网络通信当中,访问一个网站存在被第三方截取数据的风险,更甚至当你以自己的用户名和密码登录该网站的时候,这些信息也有可能被窃取。于是为了规避这种风险,人们提出了ssh。
SSH(Secure Shell): 一种网络安全协议,让信息以加密的形式进行传输。具体体现为ssh通信依赖公钥和私钥这两把钥匙来加密和解析数据。
无论是公钥还是私钥都由本地计算机生成,然后本地计算机会把公钥发给目标服务器。目标服务器所发送的信息都会用公钥进行加密,当收到信息之后,本地计算机再用私钥进行数据解析。由于公钥加密的信息只能用私钥进行解析,而私钥一直存在于本地PC之中,所以不可能被第三方通过网络窃取。通过这种设置,即便第三方通信数据,也因为只有一把钥匙而无法解析。
以上只是一些关于SSH的粗略理解,事实上公钥私钥只用于SSH握手过程的相互确认身份,具体的信息传递还是其他一些加密方法。

在本地生成公钥和私钥

进入git bash
第一步,切换到根目录且进入.ssh文件夹。

cd ~
cd .ssh

第二步,生成密钥。

sshtest-keygen -t rsa -b 4096

第三步,输入密钥的名称(例如test)。
第四步,输入密码。
git常用命令(git github ssh),develop tools,git,github,ssh
通过这个这两部操作,会生成test和test.pub两个文件,前者是私钥文件,后者是公钥文件。
第五步,创建config文件,指定使用该密钥文件来认证GitHub。

tial -5 config

最后一步,进入test.pub文件,复制公钥添加在GitHub中。

在GitHub中添加公钥

通过上一个步骤,我们获取了本地计算机生成的公钥。接下来进入GitHub添加公钥。
如图,先进入GitHub页面,点击自己的头像,再点击Settings…
git常用命令(git github ssh),develop tools,git,github,ssh
git常用命令(git github ssh),develop tools,git,github,ssh
通过以上的操作,接下来我们用本地计算机访问GitHub的时候,GitHub便知道是哪台计算机访问它了,以便接下来我们将GitHub的远程仓库和本地仓库连接起来。

4、远程仓库(GitHub)相关操作

下载GitHub上的代码(git clone)

下载GitHub上的代码可以通过命令行的方式,也可以通过网页点击的方式。网页点击则相对简单,如图,直接点击Download ZIP即可以下载相应的压缩包。
git常用命令(git github ssh),develop tools,git,github,ssh
命令行的方式则有三种,HTTPS, SSH, GitHub CLI。这三种方式只是复制对应的链接,然后在git bash输入命令行即可。

git clone <link>

在我们克隆(clone)别人的仓库之后,也可以用git log去查看作者的修改记录。

下载被更新代码(git pull)

如果我们想获取代码作者在GitHub上作的修改,最笨的方法当然是重新下载一遍,但也可以用git pull命令更新所修改的内容。但需要注意的是,使用git pull命令必须先进入相应的文件夹。

git pull

上传修改的代码(git push)

我们在本地修改代码并添加到本地仓库之后可以用git push命令来将代码上传到GitHub上。但这不意味着你可以随随便便的将自己的代码push到别人的仓库中,一般而言需要得到作者的许可。而对于自己的仓库,GitHub会通过用户名或ssh的密钥来自动匹配你的权限。文章来源地址https://www.toymoban.com/news/detail-769704.html

git push

到了这里,关于git常用命令(git github ssh)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • brew install报错Error: No developer tools installed. Error: Command failed with exit 128: git

    先来解决第一个问题 Error: No developer tools installed. Install the Command Line Tools: xcode-select --install 然后升级一下brew,出现警告。然后再次尝试安装tree 出现如下错误: fatal: not in a git directory Error: Command failed with exit 128: git 在终端输入 Homebrew 3.6.20 fatal: detected dubious ownership in repositor

    2024年02月05日
    浏览(56)
  • vscode通过ssh连接github仓库(git+ssh+github+vscode详细步骤)

    首先我们先来了解一下什么是 ssh 和 github SSH(Secure Shell)是一种网络协议,用于在不安全的网络中安全地传输数据和执行远程命令。它提供了加密的通信通道,使得数据传输过程中不容易被窃听或篡改。 SSH 使用公钥加密和私钥解密的方式进行身份验证和数据传输。用户生成

    2024年01月25日
    浏览(62)
  • 【GIT】GitHub添加ssh密钥

    在想要克隆GitHub项目到本地时,通常开源通过https和ssh两种方式,由于GitHub的服务器步数在海外,https连接受网络波动的影响较大,经常会出现连接中断的情况,相比之下,用ssh方式进行克隆显得更加方便和高效。 GitHub 的 SSH 密钥用于对你的 GitHub 账号进行身份验证,以便你能

    2024年02月12日
    浏览(85)
  • 【GIT】GitHub密钥SSH keys添加

    在生成SSH密钥之前,可以检查是否有任何现有的SSH密钥。 Mac 打开终端: 输入 ls -al ~/.ssh 以查看是否存在现有的SSH密钥。 Windows 打开Git Bash: 输入 ls -al ~/.ssh 以查看是否存在现有的SSH密钥。 Linux 打开: 输入 ls -al ~/.ssh 以查看是否存在现有的SSH密钥。  检查目录列表,看看您是否

    2024年03月08日
    浏览(60)
  • Git 配置SSH,多个 Github 账号配置不同的SSH KEY

    首先做个说明 生成一对默认的私钥公钥,私钥自己客户端留着用,公钥可以给多个平台用。 多对私钥公钥,主要是应对一个平台多个账号的情况。当然你想每个平台使用不同的私钥公钥也是可以的。 多次生成私钥公钥需要自己重新命名,否则会覆盖之前的。 一、查看是否已

    2024年02月07日
    浏览(69)
  • KAFKA (2.12-2.2.1)常用命令和kafka tool 工具使用

    KAFKA (2.12-2.2.1)常用命令 #集群地址以逗号分隔如 ip1:9092, ip2:9092, ip3:9092 ./kafka-topics.sh --list --bootstrap-server ip:9092 ./kafka-topics.sh --bootstrap-server ip:9092 --create --topic demo0218 --partitions 1 --replication-factor 1 查看某个topic ./kafka-topics.sh --bootstrap-server ip:9092 --describe --topic demo0218 #修改demo0218分

    2024年02月03日
    浏览(35)
  • 使用ssh连接github——git学习之路(二)

    ssh全称为Secure Shell, 意味安全的外壳,旨在为不安全的网络提供共安全的通信。 参考自碎步の流年的博客 使用ssh连接github,能够增强安全性和便捷性。因为可以启用ssh代理,这样就不用每次push都要输入密码。 首先,要保证本机安装了ssh工具,一般windows会自带openssh,没有的

    2024年02月14日
    浏览(58)
  • 本地Git仓库和GitHub仓库SSH传输

    SSH创建命令解释 ssh-keygen = 用于创建密钥的程序 -m PEM = 将密钥的格式设为 PEM -t rsa = 要创建的密钥类型,本例中为 RSA 格式 -b 4096 = 密钥的位数,本例中为 4096 -C “azureuser@myserver” = 追加到公钥文件末尾以便于识别的注释。 通常以电子邮件地址用作注释,但也可以使用任何最适

    2024年02月14日
    浏览(46)
  • 使用 SSH 方式实现 Git 远程连接GitHub

    git是目前世界上最先进的分布式版本控制系统,相比于SVN,分布式版本系统的最大好处之一是在本地工作完全不需要考虑远程库的存在,也就是有没有联网都可以正常工作!当有网络的时候,再把本地提交推送一下就完成了同步,非常方便,故而也得到了广大IT工作者的青睐

    2024年01月18日
    浏览(70)
  • git ssh密钥配置 & 本地项目推送到github

    1 加密算法类型如下所示: 算法类型 公钥 私钥 ED25519 id_ed25519.pub id_ed25519 RSA id_rsa.pub id_rsa 步骤一: 查看已存在的 SSH 公钥 ED25519 算法 cat ~/.ssh/id_ed25519.pub RSA 算法 cat ~/.ssh/id_rsa.pub 步骤二: 生成 SSH 密钥 如果没有公钥 基于ED25519算法,生成密钥对命令如下: ssh-keygen -t ed25519 -C “

    2024年04月23日
    浏览(64)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包