【Git】Git与GitHub 入门【转】

简介:

 

GitHub

  GitHub是一个基于git的代码托管平台,付费用户可以建私人仓库,我们一般的免费用户只能使用公共仓库,也就是代码要公开。

  对于一般人来说公共仓库就已经足够了,而且我们也没多少代码来管理,O(∩_∩)O~。

 


本地仓库建立

1,注册账户以及创建仓库

  要想使用github第一步当然是注册github账号了。之后就可以创建仓库了(免费用户只能建公共仓库),Create a New Repository,填好名称后Create,之后会出现一些仓库的配置信息,这也是一个git的简单教程。

2,安装客户端msysgit

  github是服务端,要想在自己电脑上使用git我们还需要一个git客户端,这里选用msysgit。

  装完msysgit后右键鼠标会多出一些选项来,在本地仓库里右键选择Git Init Here,会多出来一个.git文件夹,这就表示本地git创建成功。

  右键Git Bash进入git命令行,为了把本地的仓库传到github,还需要配置ssh key。

  本地仓库建立:设置username和email,提供身份标识,因为github每次commit都会记录他们。

$ git config --global user.name "your name"
$ git config --global user.email your_email@youremail.com

3,选择git仓库目录

  比如在D盘建立/opensource/calculator/

cd /d
mkdir /opensource/calculator
//切换到cal目录
cd /d/opensource/calculator

4,初始化

  git init  会创建一个隐藏目录.git

5,添加文件,先复制到目录下,再命令行添加

cp /d/cal.py /d/opensource/calculator/cal.py
git add cal.py
git commit –m “计算器项目”  // 这个是提交说明,修改说明

 


连接github

配置Git

  首先在本地创建ssh key;

$ ssh-keygen -t rsa -C "your_email@youremail.com"

  后面的your_email@youremail.com改为你的邮箱,之后会要求确认路径和输入密码,使用默认的一路回车就行。

  成功的话会在~/下生成.ssh文件夹,进去,打开id_rsa.pub,复制里面的key。

  回到github,进入Account Settings,左边选择SSH Keys,Add SSH Key,title随便填,粘贴key。为了验证是否成功,在git bash下输入:

$ ssh -T git@github.com

  如果是第一次,会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but GitHub does not provide shell access 。这就表示已成功连上github。

  接下来要做的就是把本地仓库传到github上去,进入要上传的仓库,右键git bash,添加远程地址:

$ git remote add origin git@github.com:yourName/yourRepo.git 

  后面的yourName和yourRepo表示在github的用户名和刚才新建的仓库,加完之后进入.git,打开config,这里会多出一个remote “origin”内容,这就是刚才添加的远程地址,也可以直接修改config来配置远程地址。

 

提交、上传

  接下来在本地仓库里添加一些文件,比如README

$ git add README
$ git commit -m "first commit" 

  上传到github:

$ git push origin master  //可能有时候需要先把github上的同步下来,再一块和本地的同步上去
  1. git push命令会将本地仓库推送到远程服务器。 
  2. git pull命令则相反。

  修改完代码后,使用git status可以查看文件的差别,使用git add 添加要commit的文件,也可以用git add -i来智能添加文件。

  之后git commit提交本次修改,git push上传到github。

 


gitignore文件

  gitignore顾名思义就是告诉git需要忽略的文件,这是一个很重要并且很实用的文件。

  一般我们写完代码后会执行编译、调试等操作,这期间会产生很多中间文件和可执行文件,这些都不是代码文件,是不需要git来管理的。

  我们在git status的时候会看到很多这样的文件,如果用git add -A来添加的话会把他们都加进去,而手动一个个添加的话也太麻烦了。这时我们就需要.gitignore了。

 


tag

  我们可以创建一个tag来指向软件开发中的一个关键时期,比如版本号更新的时候可以建一个“v2.0”、“v3.1”之类的标签,这样在以后回顾的时候会比较方便。

  tag的使用很简单,主要操作有:查看tag、创建tag、验证tag以及共享tag。

查看tag

  列出所有tag:git tag

  这样列出的tag是按字母排序的,和创建时间没关系。如果只是想查看某些tag的话,可以加限定:

git tag -l v1.*

  这样就只会列出1.几的版本。

创建tag

  创建轻量级tag:

git tag v1.0

  这样创建的tag没有附带其他信息,与之相应的是带信息的tag:

git tag -a v1.0 -m 'first version' 

  -m后面带的就是注释信息,这样在日后查看的时候会很有用,这种是普通tag,还有一种有签名的tag:

git tag -s v1.0 -m 'first version'

   前提是你有GPG私钥,把上面的a换成s就行了。除了可以为当前的进度添加tag,我们还可以为以前的commit添加tag:

//首先查看以前的commit
git log --oneline
//假如有这样一个commit:8a5cbc2 updated readme
//这样为他添加tag
git tag -a v1.1 8a5cbc2

 

删除tag

  很简单,知道tag名称后:

git tag -d v1.0

验证tag

  如果你有GPG私钥的话就可以验证tag:

git tag -v v1.0

共享tag

  我们在执行git push的时候,tag是不会上传到服务器的,比如现在的github,创建tag后git push,在github网页上是看不到tag的,为了共享这些tag,你必须这样:

git push origin --tags 

 










本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/sky-heaven/p/5066541.html,如需转载请自行联系原作者



相关文章
|
7天前
|
人工智能 Linux 开发工具
[oeasy]python018_ 如何下载github仓库_git_clone_下载仓库
在这个文档中,作者讨论了如何继续进行编程学习,特别是关于GitHub的使用。首先,回顾了从编写简单代码到管理大量代码的过程。然后,提到了通过“保存运行一条龙”操作来处理代码,以及GitHub作为全球最大的开源软件平台的重要性。在GitHub上,用户可以找到各种软件项目,包括Linux、Python和Blender等。 作者解释了GitHub的基本操作,如点赞(star)、 fork(复制项目)和watch(关注项目更新)。还介绍了如何下载项目到本地,通过`git clone`命令复制仓库的URL并将其粘贴到终端进行下载。如果遇到问题,可以尝试更换HTTP链接或等待一段时间重试。
189 1
|
13天前
|
算法 Java C++
刷题两个月,从入门到字节跳动offer丨GitHub标星16k+,美团Java面试题
刷题两个月,从入门到字节跳动offer丨GitHub标星16k+,美团Java面试题
|
15天前
|
开发工具 git 开发者
Git入门:轻松掌握版本控制的艺术
【5月更文挑战第13天】Git是流行的版本控制系统,适合各种规模的项目。本文引导读者入门Git,学习版本控制艺术。内容涵盖Git简介、安装配置、基础操作(如初始化、添加文件、提交、查看状态和历史)、分支管理、协作开发(克隆、推送、拉取)及高级用法,如标签管理、子模块和版本比较。遵循最佳实践,如频繁提交、有意义的提交信息和合理分支管理,可提升开发效率。
|
15天前
|
开发工具 git
Git项目如何配置,如何上传至GitHub。其详细步骤
Git项目如何配置,如何上传至GitHub。其详细步骤
14 0
|
15天前
|
网络安全 数据安全/隐私保护
解决git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Pleas
解决git@github.com: Permission denied (publickey). fatal: Could not read from remote repository. Pleas
|
15天前
|
存储 开发工具 git
|
15天前
|
开发工具 数据安全/隐私保护 C++
vs2019中同步到github上的用户名错误_控制面板和vs的git全局设置重新登录
vs2019中同步到github上的用户名错误_控制面板和vs的git全局设置重新登录
18 0
|
15天前
|
前端开发 JavaScript 网络安全
Git(3) 使用Github管理项目
Git(3) 使用Github管理项目
28 0
|
15天前
|
数据可视化 开发工具 git
Git代码版本管理入门
Git代码版本管理入门
|
15天前
|
开发工具 git
git如何创建新分支,GitHub默认分支是main怎么连上
git如何创建新分支,GitHub默认分支是main怎么连上
27 0