windows10安装git并连接github

本文目的就是在本地客户端使用git工具连接github远程仓库,将代码托管到github中。并拓展性的学习一些基本的git命令。

一、git安装

官方下载网址:https://git-scm.com/download/win

安装:一路下一步,傻瓜式安装即可

本教程的git安装环境是Windows10,linux的安装和操作大同小异。

不过还是解释一下:

1. 修改安装目录

建议修改到非C盘的目录

782256598.png

2. 选择安装组件

选择默认

1559119110.png

  • git Bash Here可以从当前文件夹打开git命令行界面
  • git GUI Here 可以打开图形界面

3. 创建开始菜单目录

选择默认

3626142490.png

4. 选择编辑器

选择默认

139108244.png

5. 调整环境路径

选择默认

2879951582.png

这里的三个选项的意思:

  • A、use git from git bash only只能从git bash里面使用git命令,即不能在cmd命令行中使用,应为这个选项不会把git命令加 入到环境变量中。
  • B、user git from the widowscommand prompt在cmd命令行中使用git命令,可以在git bash和cmd中同时使用git命令,会自动在增加环境变量
  • C、user git and optionalunix tools from the windows command prompt在第二个选项的基础上增加了unix系统中的一些工具。

6. 选择安全传输协议

选择默认

1576445299.png

7. 配置行结束转换符

选择默认

3382971352.png

8. 设置GIT Bash终端仿真器的样式

选择默认

611830090.png

  • A、use mintty是一种仿真样式,比cmd窗口好在可以调节大小,字体样式啥的。
  • B、use windows defaultconsole window使用windows系统自带的cmd窗口打开git bash。

9. 配置额外的选项

选择默认

1556073694.png

  • A、enable file system caching允许文件缓存。即在提交文件的时候,可以先将文件放到缓存区,然后再统一提交。
  • B、enable git credentialmanager允许git许可证管理(会检测并下载.netframework v4.5

10. 安装进度

3772146628.png

11. 确认是否安装成功

如下图表示安装成功。

600906926.png

二、连接github

连接前需要登录github官网注册账号并且创建一个仓库,如仓库名为:test,此方法自行百度,傻瓜式的。

1. 配置SSH key

打开git bash 输入:

1
$ ls ~/.ssh/   #检查本机是否已经存在ssh密钥,如果提示:"No such file or directory" 说明你是第一次使用git,还不存在ssh秘钥。如果看列出id_rsa、id_rsa.pub、known_hosts三个文件说明已存在ssh密钥

如果不存在ssh秘钥,则输入:

1
2
$ ssh-keygen -t rsa -C "邮箱账号"
#如:ssh-keygen -t rsa -C "1667164190@qq.com"

然后连续3次回车,最终会在用户目录下生成一个.ssh目录(可能系统默认隐藏掉了,请自行系统设置取消文件隐藏默认设置)。如下图

3285614772.png

打开用户目录,找到~/.ssh/id_rsa.pub文件,记事本打开并复制里面的全部内容,打开你的github主页,进入个人设置 -> SSH and GPG keys ->New SSH key

将刚复制的内容粘贴到key那里,title随便填,保存。至此ssh key设置完毕。
3048208708.png

2. 测试配置ssh秘钥是否成功

1
$ ssh -T git@github.com       # 注意邮箱地址不用改。

如果提示Are you sure you want to continue connecting (yes/no)?,输入yes,然后会看到如下图表示成功连接。
3879430179.png

3. 配置全局用户信息

在Git bash中输入:

(1)设置用户名

1
2
$ git config --global user.name '这里填写github的用户名'
#如: git config --global user.name 'qcmoke'

(2)设置全局用户邮箱

1
2
$ git config --global user.email '这里填写github设置的用户邮箱'
#如:git config --global user.email '1667164190@qq.com'

4. 查看配置信息

1
git config --list

注意:该设置在GitHub仓库主页显示谁提交了该文件,注意这里的 - 有两个!

5. 从本地仓库提交文件到远程仓库github

本地创建一个目录,并进入此目录,初始化此目录为本地git仓库。

1
2
3
4
5
6
7
8
9
wen@DESKTOP-P0991RH MINGW64 ~/Desktop
$ mkdir test

wen@DESKTOP-P0991RH MINGW64 ~/Desktop
$ cd test/

wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test
$ git init
Initialized empty Git repository in C:/Users/wen/Desktop/test/.git/

6. 创建一个文件,待后续上传github。

1
2
3
4
5
6
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ echo "hello world !" >>readme.txt

wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ ls -a
./ ../ .git/ readme.txt

7. 查看当前git状态

1
2
3
4
5
6
7
8
9
10
11
12
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git status
On branch master

No commits yet

Untracked files:
(use "git add ..." to include in what will be committed)

readme.txt

nothing added to commit but untracked files present (use "git add" to track)

8. 提交文件到git暂存区

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git add readme.txt #提交所有文件使用: git add .
warning: LF will be replaced by CRLF in readme.txt.
The file will have its original line endings in your working directory.

wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git status
On branch master

No commits yet

Changes to be committed:
(use "git rm --cached ..." to unstage)

new file: readme.txt

9. 提交暂存区的所有文件到本地仓库

1
2
3
4
5
6
7
8
9
10
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git commit -m "第一次提交readme.txt文件"
[master (root-commit) e5041a3] 第一次提交readme.txt文件
1 file changed, 1 insertion(+)
create mode 100644 readme.txt

wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git status
On branch master
nothing to commit, working tree clean

10. 给本地仓库映射远程仓库

如下图先要复制远程仓库链接git@github.com:qcmoke/test.git
674857376.png

1
2
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git remote add origin git@github.com:qcmoke/test.git

请千万注意,把上面的qcmoke替换成你自己的GitHub账户名,否则,你在本地关联的就是我的远程库,关联没有问题,但是你以后推送是推不上去的,因为你的SSH Key公钥不在我的账户列表中。
添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。

11. 把本地库的所有内容推送到远程库上

1
2
3
4
5
6
7
8
9
wen@DESKTOP-P0991RH MINGW64 ~/Desktop/test (master)
$ git push -u origin master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 253 bytes | 253.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
To github.com:qcmoke/test.git
* [new branch] master -> master
Branch 'master' set up to track remote branch 'master' from 'origin'.

此时刷新github test项目页就会看到上传的文件。

1459290691.png

三、git常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# git init  #创建新的 Git 仓库

# git status #查看项目的当前状态信息。"AM" 状态的意思是,这个文件在我们将它添加到缓存之后又有改动。
# git status -s #加了-s 参数,以获得简短项目的当前状态信息。
# git diff #查看执行 git status 的结果的详细信息
# git diff #尚未缓存的改动
# git diff --cached #查看已缓存的改动
# git diff HEAD #查看已缓存的与未缓存的所有改动
# git diff --stat #显示摘要而非整个diff

# git add #将该文件添加git暂存区

# git rm
# git rm -f #删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
# git rm --cached #如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中,换句话说,仅是从跟踪清单中删除,使用 --cached 选项即可
# git rm –r * #可以递归删除,即如果后面跟的是一个目录做为参数,则会递归删除整个目录中的所有子目录和文件

# git commit -m "第一次提交readme.txt文件" #提交暂存区的所有文件到git仓库

# git clone #拷贝一个 Git 仓库到本地

#git remote add [shortname] [url] #添加远程库,如 git remote add origin git@github.com:qcmoke/test.git
# git remote #要查看当前配置有哪些远程仓库
# git remote -v #要查看当前配置有哪些远程仓库(可以看到每个别名的实际链接地址)

# git push -u origin master #第一次推送master分支的所有内容至GitHub
# git push origin master #将master分支最新修改推送至GitHub


----------- 本文结束 -----------




如果你觉得我的文章对你有帮助,你可以打赏我哦~
0%