Git安装及常用命令整理

关于 Git 的安装使用及命令这些知识,网络上有很多前辈已经为大家准备很多教程,首先要好好感谢他们,本文后面也会有相关的资料供参考,在这里整理一下自己会用到的,大约是最简单最直接的了,复杂的我估计暂时也接触不到就先不学那么深了,因为我目前用 Windows10 ,所以就只涉及到 Win 系统下的使用,只用命令行。
Windows系统下Git安装及常用命令整理

安装Git:

http://msysgit.github.io/下载一个 msysgitnext 一路默认安装就好了。
安装完开始菜单找到 Git -> Git Bash 就进入 Git 命令行操作了,实际感觉应该和 LINUX 以及 UNIX 是一样的,建议所有Git操作都用命令行进行而不用可视化的窗口,这样换个开发环境换个系统一样的使用。

Git的简单配置:

#配置使用git仓库的人员姓名
git config --global user.name "Name"
#配置使用git仓库的人员email git config --global user.email you@example.com
#配置到缓存 默认15分钟
git config --global credential.helper cache 
#修改缓存时间 git config --global credential.helper 'cache --timeout=3600'   
$ git config -1           #列举所有配置,根据需要配置

创建代码库repository:

cd e:                   #进入e盘 mkdir mygit             #创建目录mygit
cd learngit             #进入目录mygit pwd                     #显示当前目录
/e/mygit
$ git init                #通过这个命令创建代码库
Initialized empty Git repository in /e/mygit/.git/

当然也可以在已经有的目录下创建代码库,创建成功在目录下生成一个隐藏文件夹 .git 用来记录所有信息,不要随意修改删除这个目录,创建代码库的目录不要有中文。

Git代码提交暂存区

提交本地代码分两步:

第一步,将代码用add命令添加到暂存区 Staging Area

git add AndroidManifest.xml             #添加单个AndroidManifest.xml文件 git add src                             #添加src目录
$ git add .                               #添加目录下的全部文件

第二步,将 Staging Area 中的代码提交到代码库 repository

$ git commit –m "你的注释"                 #将中转区已修改代码提交到代码库

要随时掌握暂存区当前的状态,使用 git status 命令。
如果 git status 告诉你有文件被修改过,用 git diff 可以查看修改内容。

在这里遇见一点小插曲,我在添加整个目录运行 git add . 命令的时候提示下面的错误;

warning: LF will be replaced by CRLF in XXXXXX

遇到这个问题是因为 windows 中的换行符为 CRLF , 而在 linux 下的换行符为: LFGit 会自动把 LF 替换成 CRLF ,解决这个问题需要删除之前的 .git 文件夹,重新创建库,并运行下面代码设置关掉这个自动替换的选项;

$ git config --global core.autocrlf false

版本回退和撤销修改:

首先你得清楚上面那张图里面的三个概念,工作区,暂存区,代码库,提交代码第一步是通过 add 将修改过的需要提交的代码从工作区添加到暂存区,第二部是通过 commit 将暂存区的代码全部提交到代码库。

版本回退是回退到已经提交到代码库中的版本,涉及到以下命令;

git reset --hard commit_id        #回退到某个指定版本,commit_id指版本号HEAD指当前版本HEAD^指上一个版本,以此类推 git log                           #回到过去,查看提交历史,以便确定要回退到哪个版本
$ git reflog                        #回到未来,查看命令历史,以便确定要回到未来的哪个版本

强制覆盖本地文件修改

git fetch --all  
git reset --hard origin/master 

撤销修改;
场景1:修改工作区某个文件,想直接丢弃工作区的修改时,用命令 git checkout -- file
场景2:不但工作区某个文件的内容,还add到了暂存区时,想丢弃修改,分两步,第一步用命令 git reset HEAD file ,就回到了场景1,第二步按场景1操作。

【2019/05/22 Update】

忽略某个已经被提交过的文件

场景:你提交过了git,然后发现有个文件(文件夹)是不应该提交的,这时候在 .gitignore 里添加忽略已经没有效果了,因为这个文件已经不是 Untracked Files 了,需要先删除 git 跟踪。

# 会删除跟踪并且删除本地文件
git rm somefile
# 只删除git跟踪,文件还在(推荐)
git rm --cache somefile

在你的 .gitignore 文件,把文件忽略掉,然后commit,push,以后对于这个文件的修改就会被忽略。

撤回git add的文件

场景:上去就是 git add . 发现把不该提交的文件也 add 了,这时候我们需要撤销add文件。

# 确认一下哪些文件被add了
git status
# 方案一,上一次add的文件会全部撤回
git reset HEAD
# 方案二,只撤销某个文件
git reset HEAD somefile

有冲突撤销 merge

场景:在使用 merge 后,发现有代码冲突,而这部分代码是同事负责的,需要同事解决冲突后再 merge ,这边状态在 merging ,需要撤销刚才的 merge 命令。

git merge --abort

使用github的一些问题

错误提示:

Permanently added the RSA host key for IP address '52.74.223.119' to the list of known host

这个意思大概就是讲 githubIP 添加到 hosts 文件即可,在 C:WindowsSystem32driversetchosts 文件末尾添加下面一行即可。

52.74.223.119       github.com

错误提示:

Error: GH007: Your push will post a private email address.

这个意思是你在 github 上设置了邮件地址隐私保护,登录 github 网页上找到 setting->emails->Keep my email address private 将这个勾选去掉再 push 就可以了。

先学习到这里,后面再学习 GitHub 结合使用远程代码库。

标题:Git安装及常用命令整理

原文链接:https://beltxman.com/1226.html

若无特殊说明本站内容为 行星带 原创,未经同意请勿转载。

Git安装及常用命令整理”上有 16 条评论;

          1. 不,我看出来你做说你自己。所以问你这样说你自己合适吗?

评论已关闭。

Scroll to top