Git / GitKraken 安装及使用

Gi 最常见版--代码bash版

推荐一个极简教程,类似游戏一样,大约两个小时,教会涵盖90%以上人的命令行操作:Learn Git Branchinghttps://oschina.gitee.io/learn-git-branching/?demo

Git 是所有基于Git的图形管理软件的基础,如果还要稍微深入了解,可以以下最简单有效的教程:

Git教程 - 廖雪峰的官方网站 (liaoxuefeng.com)以下部分笔记摘自廖雪峰的教程:

优点:版本控制系统——解决单人多次、多人多次改动问题。

如果你写过长篇大论,想删除一个段落,又怕将来想恢复找不回来怎么办?有办法,先把当前文件“另存为……”一个新的文件,再接着改,改到一定程度,再“另存为……”一个新文件,这样一直改下去,最后你的Word文档变成了这样:

Git / GitKraken 安装及使用_第1张图片

如果有一个软件,不但能自动帮我记录每次文件的改动,还可以让同事协作编辑,这样就不用自己管理一堆类似的文件了,也不需要把文件传来传去。如果想查看某次改动,只需要在软件里瞄一眼就可以,岂不是很方便?

这个软件用起来就应该像这个样子,能记录每次文件的改动:

版本 文件名 用户 说明 日期
1 service.doc 张三 删除了软件服务条款5 7/12 10:38
2 service.doc 张三 增加了License人数限制 7/12 18:09
3 service.doc 李四 财务部门调整了合同金额 7/13 9:51
4 service.doc 张三 延长了免费升级周期 7/14 15:17

这样,你就结束了手动管理多个“版本”的史前时代,进入到版本控制的20世纪。

局限:以纯文本方式编写文件

所有的版本控制系统,其实只能跟踪文本文件的改动,比如TXT文件,网页,所有的程序代码等等,Git也不例外。版本控制系统可以告诉你每次的改动,比如在第5行加了一个单词“Linux”,在第8行删了一个单词“Windows”。而图片、视频这些二进制文件,到底改了啥,版本控制系统不知道,也没法知道。Microsoft的Word格式也是二进制格式,也无法以纯文本方式编写文件。

因为文本是有编码的,比如中文有常用的GBK编码,日文有Shift_JIS编码,如果没有历史遗留问题,强烈建议使用标准的UTF-8编码,所有语言使用同一种编码,既没有冲突,又被所有平台所支持。

Note:

1,在Git bash中如果输错命令,频繁出现>符号,导致无法退出该行。用ctr+c 或ctr+z可强制退出该行,回到命令提示符。

2,用git reflog后,一直出现no next tag <press return>,此时按q+enter即可退出。 

3,如果commit提交时没有加-m,处理方式见下面:Git新手学习:git commit后出现:please enter the commit message for your changes,如何处理_please enter the commit message for your changes._IT_winds007的博客-CSDN博客

简洁实用Git Bash版技巧

1,初始化本地Git仓库

在你想要备份的项目文件夹上右键,选择“Git Bash Here”,执行以下命令:

git init

这会在项目文件夹中创建一个隐藏的.git文件夹,用于存储版本控制信息。

,2,添加文件到暂存区

将项目中的所有文件添加到Git的暂存区:

git add -A

如果你想添加特定的文件,比如main.py,可以使用git add main.py

3,添加文件到本地仓库

提交暂存区的文件到本地仓库,并添加一个描述性的提交信息:

git commit -m "初始项目备份"

提交信息应该简洁明了地描述此次提交的内容,方便后续查看版本历史。

查看状态

1,查看当前工作区与暂存区状态:git status

2,查看仓库历史状态:git log

日常备份操作:

# 添加更新的文件到暂存区
git add -A

# 提交更新到本地仓库
git commit -m "描述更新内容,例如:添加新功能X"

# 查看提交历史,确认备份成功
git log

日常恢复操作:

一、暂时恢复回去,使用git checkout

git checkout

此时,如果用pycharm打开,会发现文件都变回目标版本了。

二、永久恢复回去,使用git reset --hard

git reset --hard

QA:

1,假如我有A、B、C三个先后版本,如果我使用:git checkout A,回到版本A,然后我又更改这个版本,并commit了D,那么D是排在哪个地方?

答:git checkout A会将HEAD指向版本A,此时处于“分离HEAD”状态。在这种状态下,任何新的提交(比如D)会基于当前HEAD(即版本A)创建,形成一个新的提交。这个新提交D会成为版本A的一个直接后代,但它不会自动与原来的主分支(假设是B和C所在的分支)合并或关联。因此,D会形成一个独立的“侧支”,而不是插入到A和B之间。

A <- D
 \
  B <- C

GitUI版---Sourcetree

安装sourcetree可以在官网下载,免费。

假如,出现.netframework 版本不够的提示,无法安装。

方案一:如我一样,win8装不了.netframework 4.8. 电脑里只有4.5版本,可以去如下网站找低版本的sourcetree
https://www.sourcetreeapp.com/download-archives

方案二:到官网上找到自己系统适合的(我的是win8.1).netframework最高的版本,如下所示:

在 Windows 8.1 上安装 .NET Framework - .NET Framework | Microsoft Learn

按照方案二,解决了问题。顺利装上了3.4.8版本的sourcetree。所需要的.net和sourcetree安装文件名如下:

Git UI版--GitKraken

GitKraken 图形界面软件,方便版本对比、更新版本、多人协作等。完全可视化的提升生产力工具。从此电脑不再n多版本,n个命名,找不到版本之间的区别了。

介绍见:「程序员利器」免费高效的Git可视化操作工具_哔哩哔哩_bilibili

你可能感兴趣的:(工具,笔记类,git,github)