【Linux系统编程】初步运用git工具--2

简介: 【Linux系统编程】初步运用git工具--2

【Linux系统编程】初步运用git工具--1 https://developer.aliyun.com/article/1424713

下面,我们正式开始推送,其中具体的使用和注意事项如下:


//首先把目录process放入到本地仓库c-application-55中
[zhu@zhujunhao c-application-55]$ cp ../../process . -r  
[zhu@zhujunhao c-application-55]$ ll
total 12
drwxrwxr-x 2 zhu zhu 4096 Dec 10 08:59 process
-rw-rw-r-- 1 zhu zhu  819 Dec 10 08:38 README.en.md
-rw-rw-r-- 1 zhu zhu  908 Dec 10 08:38 README.md
//add增添到当前目录仓库中的暂存区中
[zhu@zhujunhao c-application-55]$ git add . //add当前目录下所有内容,这里可指定文件
//commit推送本地,这里我们说明标题为"Linux第一次提交进度条改版,测试通过"
[zhu@zhujunhao c-application-55]$ git commit -m "Linux第一次提交进度条改版,测试通过"
[master 3c8e71a] Linux第一次提交进度条改版,测试通过
 4 files changed, 102 insertions(+)
 create mode 100644 process/main.cpp
 create mode 100644 process/makefile
 create mode 100644 process/process.cpp
 create mode 100644 process/process.h
//最后push推送远端仓库
[zhu@zhujunhao c-application-55]$ git push
warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:
  git config --global push.default matching
To squelch this message and adopt the new behavior now, use:
  git config --global push.default simple
See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)
Username for 'https://gitee.com':   //这里要让你输入在gitee注册的账号
Password for 'https://19836143735@gitee.com':   //这里要让你输入注册的密码
//若输入错误,将会出现类似于下面的信息,表示错误
fatal: Authentication failed for 'https://gitee.com/zhujunhaochengxuyuan/c-application-55.git/'
//输入成功后将会出现有关下面类似的信息,表示成功推送
Counting objects: 8, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 1.61 KiB | 0 bytes/s, done.
Total 7 (delta 1), reused 0 (delta 0)
remote: Powered by GITEE.COM [GNK-6.4]
To https://gitee.com/zhujunhaochengxuyuan/c-application-55.git
   249e5a3..3c8e71a  master -> master


git的指令运用:


       当我们提交远端仓库后,可在仓库目录下使用git log查看历史提交记录,注意,这里只能在本地仓库目录下才可以使用 git log 查看,在其它目录下使用统统失败。

[zhu@zhujunhao c-application-55]$ git log
commit 3c8e71aad65802c4b8b5c749874ae23a31b6259f
Author: /*.......这里显示的是作者信息....*/
Date:   Sun Dec 10 09:08:16 2023 +0800
    Linux第一次提交进度条改版,测试通过
commit 249e5a32f815dec545799255be464e382ac53cca
Author: /*.......这里显示的是作者信息....*/
Date:   Sun Dec 10 00:37:36 2023 +0000
    Initial commit


       下面要说明一点,当我们在本地仓库目录下对仓库目录进行操作修改时,不会影响远程仓库的内容,也就是说本地仓库和远程仓库之间虽然存在某些关联,但是没有必要联系。这时,若想修改远程仓库内容,就要重新执行 add、commit、push 重新推送。当多人一起开发时,有时可能会出现提交冲突等,此时需使用 git pull 指令获取最新的代码更新,并将其合并到本地仓库中,以确保本地代码与远程仓库保持同步。


[zhu@zhujunhao c-application-55]$ git pull
//已经同步
Already up-to-date.

      git指令中 git status 命令可查看当前Git仓库的状态,即显示哪些文件被修改、哪些文件被暂存、哪些文件未被跟踪等信息。通过使用git status,开发者可以随时了解项目的最新变动,避免因不同分支的代码冲突而引发的问题。


[zhu@zhujunhao c-application-55]$ git status
//此时的仓库状态没有任何变动
# On branch master
nothing to commit, working directory clean


       上面还说到,当我们使用add只是将特定的目录或文件进行暂存,若想将暂存文件或目录全部去除,直接使用 git reset 指令。若只想将某个特定的暂存文件或目录移回工作区,可以使用 git reset [要移除的文件或目录]                      


[zhu@zhujunhao c-application-55]$ git add test     //add文件test
[zhu@zhujunhao c-application-55]$ git status  
//可发现当前仓库状态已经add推送
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#    new file:   test
#
[zhu@zhujunhao c-application-55]$ git reset test   //移除test文件
[zhu@zhujunhao c-application-55]$ git status 
//发现移除成功
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#    test
nothing added to commit but untracked files present (use "git add" to track)


.gitignore文件的使用:


       在 .gitignore 文件中,我们也可自己进行控制过滤掉不需要的文件。当自己需要传送某些后缀名的文件时,只需在.gitignore 文件中找到对应文件后缀名语句 “ *.[指定后缀名] ” 将其删除即可。若不想增添特定后缀名的文件,在.gitignore文件中输入 “ *.[指定后缀名] ” 即可。


[zhu@zhujunhao c-application-55]$ vim .gitignore
[zhu@zhujunhao c-application-55]$ cat .gitignore
*.phh  //增添的内容,过滤掉以.phh为后缀名的文件,当删除此语时,将正常推送 
...........


       这里要注意的是,不要忽略要过滤文件前面的通配符符号' * ',若忽略了通配符过滤功能将不会生效。


       最后,要说明的是,Linux中的git指令在我们Windows系统下其实也可以运用起来,只需在对应的仓库文件夹中打开窗口或打开相关指令界面进行输入指令操作即可。


目录
打赏
0
0
0
0
1
分享
相关文章
|
8天前
|
Linux编程: 在业务线程中注册和处理Linux信号
本文详细介绍了如何在Linux中通过在业务线程中注册和处理信号。我们讨论了信号的基本概念,并通过完整的代码示例展示了在业务线程中注册和处理信号的方法。通过正确地使用信号处理机制,可以提高程序的健壮性和响应能力。希望本文能帮助您更好地理解和应用Linux信号处理,提高开发效率和代码质量。
38 17
|
8天前
|
Linux系统之whereis命令的基本使用
Linux系统之whereis命令的基本使用
50 23
Linux系统之whereis命令的基本使用
|
13天前
|
Linux下如何安装配置Fail2ban防护工具
通过以上步骤,可以在Linux系统中成功安装和配置Fail2ban,从而有效保护服务器免受暴力破解等攻击。Fail2ban通过实时监控日志文件,自动更新防火墙规则,为系统安全提供了一层重要的保护。
66 36
|
17天前
|
Linux编程: 在业务线程中注册和处理Linux信号
通过本文,您可以了解如何在业务线程中注册和处理Linux信号。正确处理信号可以提高程序的健壮性和稳定性。希望这些内容能帮助您更好地理解和应用Linux信号处理机制。
50 26
深入解析:Linux网络配置工具ifconfig与ip命令的全面对比
虽然 `ifconfig`作为一个经典的网络配置工具,简单易用,但其功能已经不能满足现代网络配置的需求。相比之下,`ip`命令不仅功能全面,而且提供了一致且简洁的语法,适用于各种网络配置场景。因此,在实际使用中,推荐逐步过渡到 `ip`命令,以更好地适应现代网络管理需求。
34 11
Linux(openwrt)下iptables+tc工具实现网络流量限速控制(QoS)
通过以上步骤,您可以在Linux(OpenWrt)系统中使用iptables和tc工具实现网络流量限速控制(QoS)。这种方法灵活且功能强大,可以帮助管理员有效管理网络带宽,确保关键业务的网络性能。希望本文能够为您提供有价值的参考。
79 28
|
26天前
|
[Linux工具] Makefile
Makefile是Linux环境下用于自动化编译和链接程序的配置文件,常用于简化大型项目的编译流程。通过定义目标文件、依赖文件及生成命令,Makefile能高效管理编译任务。它不仅适用于C语言项目,还可扩展到其他编程语言和非编程任务中。
53 20
[Linux工具] Makefile
Linux系统查看操作系统版本信息、CPU信息、模块信息
在Linux系统中,常用命令可帮助用户查看操作系统版本、CPU信息和模块信息
111 23
结合 `nc` 工具利用笑脸漏洞(Smile Bug)攻击 Metasploitable2 Linux
本文介绍如何使用 `nc`(Netcat)工具结合笑脸漏洞(Smiley Bug)攻击 Metasploitable2 Linux 靶机。首先概述了 `nc` 的基本功能和高级用法,包括建立连接、监听端口、文件传输等操作。接着详细描述了笑脸漏洞的原理及其在网络攻防中的应用,展示了通过 `nc` 发送恶意输入检测漏洞的方法。最后结合 Python 脚本实现更复杂的攻击场景,并强调了合法性和环境隔离的重要性。
51 13
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
177 6
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等