Git版本控制系统是一个分布式的系统, 是用来保存工程源代码历史状态的命令行工具;
GitHub 免费的远程仓库,也是一个开源协作社区,通过GitHub,既可以让别人参与你的开源项目,也可以参与别人的开源项目。
我们可以利用git的本地存储和github的远地存储实现存储你的代码。本文介绍的是怎么创建Repository以及上传本地代码。
可参考:
[http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374829472990293f16b45df14f35b94b3e8a026220c5000
1.
www.github.com 注册帐号
2.回到github首页,点击页面右下角“New Repository”,创建存储仓库
3.在我们能用Git工作之前,我们需要做个一次性的配置。为了Git能跟踪到谁做了修改,我们需要设置你的用户名。
git config --global user.name "your_username"
git config --global user.email "your_email@domain.com"
发送这些命令,相应地替换掉其中的“your_username”和“your_email@domain.com”(注意引号):
4.创建一个本地代码库:(.git的隐藏文件夹,就是你的本地代码库。)
$ mkdir ~/party_bid //创建一个项目party_bid 如果已经创建好工程文件,忽略这一步,直接执行下一条代码
$ cd ~/party_bid //打开这个项目
$ git init //初始化
$ touch README
$ git add README //更新README文件
$ git commit -m 'first commit'//提交代码到本地缓存,并注释信息“first commit”
$ git remote add origin https://github.com/tiantian-yuqing/party_bid.git
//在第一次你想推送一个本地代码库到远程代码库时,你需要把它添加到你的项目配置里 //注意这里的“origin”只是一个习惯。它是你的远程代码库的别名
$ git push -u origin master //将本地项目更新到github上去
现在查看github上面的hello world 项目,是不是发现已经将本地中的README文件更新上来了。
恭喜!
5.修改文件
6.加载(Stage)文件
我们现在需要加载(stage)所有项目文件。发送:
git add .
最后的“.”符号的意思是“所有文件、文件夹和子文件夹”。假如我们只想要把特定文件添加到源代码控制中去,我们可以指定它们:
git add my_file, my_other_file
7.提交文件
现在,我们想要提交已加载(staged)的文件。阅读“添加一个时间点,在这里你的文件处在一个可还原的状态”。我们提交我们的文件时,总是附带着有意义的注释,描述了它们现在的状态。
git commit -m "initial commit"
8.推送你的本地代码库的主干分支到你的远程代码库:
git push origin master
9.版本回退:
可参考:
http://blog.csdn.net/xsckernel/article/details/9021225
如果你想回退到之前的版本,可以使用
git log //显示最近提交的日志
git reset --hard HEAD^ //回退到上一版本(注:会将代码重置,就像没有提交过一样)
在Git中,用HEAD表示当前版本,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。
10.分支管理:
$ git checkout -b dev //首先我们创建dev分支,然后切换到dev分支:
Switched to a new branch 'dev'
$ git branch //用git branch命令查看当前分支
* dev
master
然后,把分支推送到远程仓库
$ git push origin dev
接下来我们就可以在dev分支上正常提交:
git add.
git commit -m ""
现在,dev分支的工作完成,我们就可以切换回master分支:
$ git checkout master
Switched to branch 'master'
现在,我们把dev分支的工作成果合并到master分支上:
$ git merge dev
合并完分支后,甚至可以删除dev分支
$ git branch -d dev
Deleted branch dev (was fec145a).
删除后,查看branch,就只剩下master分支了:
$ git branch
* master
因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。
11.删除文件:
git rm -rf .idea //删除文件夹,-rf 是删除文件夹下的内容
git rm .idea //删除文件
提交后在github中是不是已经删除了文件?
------------------------------------关于可能出现的错误----------------------------------
1.在执行
$ git remote addorigin git@github.com:defnngj/hello-world.git
错误提示:fatal: remote origin already exists.
解决办法:
$ git remote rm origin
然后在执行:
$ git remote add origin git@github.com:defnngj/hello-world.git
就不会报错误了
2.
提示:Warning: Permanently added the RSA host key for IP address '192.30.252.131' to the list of known hosts.
Permission denied (publickey).
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
出现这个问题是因为,没有在github账号添加SSH key(设置好SSH key,以后提交git push可以不需要输入密码)
解决方法如下
在终端输入。
ssh-keygen -t rsa -C"forwhat.cn"//注意。为用户名
如果执行成功。返回Generating public/private rsa key pair.
Enter file in which to save the key (/home/forwhat.cn/.ssh/id_rsa):
在这里就是设置存储地址了.反正我是直接按的回车
然后还会返回
Enter passphrase (empty for no passphrase):
再次直接回车。
Enter same passphrase again:
再次回车。
Your identification has been saved in /home/forwhat.cn/.ssh/id_rsa.
Your public key has been saved in /home/forwhat.cn/.ssh/id_rsa.pub.
The key fingerprint is:
这里有一串数。我把他屏蔽了。
The key's randomart image is:
+--[ RSA 2048]----+
| |
| |
| |
| o |
| + . S |
| . = . o |
| o + +o.o |
|E o . o.=+. |
|.+ ==+ooo. |
+-----------------+
这样SSH key就生成了。直接cat一下就好了。
cat /home/tiantian/.ssh/id_rsa.pub//在你的主目录下生成了.ssh隐藏文件
ssh-rsa AAAAB3NzaC1yc2EAAAADAQ等一长串的字符
把显示出来的直接添加到github账户设置里边的SSH keys里面(不需要填写title)
回来再
git pull
就开始远程拷贝代码了。每次git push可以不输入密码了
分享到:
相关推荐
### 2018尚硅谷Git和GitHub视频教程知识点概览 #### 一、为什么使用版本控制? 版本控制系统(Version Control System, VCS)是一种记录一个或若干个文件内容变化,以便将来查阅特定版本修订情况的系统。它帮助...
### Git和GitHub教程知识点梳理 #### 第1章:Git简介 **1.1 Git的诞生** - **背景**: Linus Torvalds 在2005年为了更好地管理和维护Linux内核项目的源代码,创造了Git。 - **特点**: 分布式版本控制系统,允许每...
Git和GitHub是现代软件开发中不可或缺的工具,用于版本控制和协作。Git是一款分布式版本控制系统,而GitHub则是一个在线平台,提供了Git仓库托管、代码审查、项目管理等功能。本手册将帮助初学者理解这两个工具的...
Git 是一个分布式版本控制系统,而 Github 是一个基于云的平台,它为 Git 提供了托管服务,允许用户存储、共享和管理他们的 Git 代码库。 1. Git Git 是由 Linux 发明者 Linus Torvalds 创建的,它的主要特点包括...
Git和GitHub是现代软件开发中不可或缺的版本控制工具和代码托管平台。Git是一个分布式版本控制系统,而GitHub则是一个基于Web的Git仓库托管服务,提供了协作开发、问题追踪、项目管理等功能。 Git的原理: Git的...
在PPT和代码详解中,可能会涉及这些概念的实际操作步骤和示例,通过实际操作gittest文件,你可以更深入地理解Git和GitHub的使用。在学习过程中,建议动手实践,结合具体场景理解和掌握这些工具,以便在未来的工作中...
### Git和GitHub使用简介 #### 一、介绍:什么是Git和GitHub? Git是一种分布式版本控制系统,主要用于跟踪在软件开发过程中对文件所做的更改。这使得开发者能够轻松地回溯到以前的状态,同时也支持并行开发。 ...
5. 提交和推送:Git使用提交(commit)来保存代码的更改,可以包含有关更改的注释以便他人理解本次提交。推送(push)将本次提交上传到共享的代码仓库。 6. 分布式存储:Git使用SHA-1散列算法对文件进行唯一标识和...
学习并熟练掌握Git和GitHub的使用,对于开发者来说至关重要,它不仅能有效管理代码版本,还能促进团队间的协作,使得代码开发和维护更加有序和高效。无论是个人项目还是大型开源项目,Git和GitHub都是值得信赖的工具...
在压缩包中的"Git&GitHub相关学习 - 副本"可能是Word文档或.xmind文件,其中详细记录了Git的命令用法、GitHub的使用场景和实践操作步骤。Word文档可能包含了文字说明、示例和步骤指南,而.xmind文件则可能以图形化的...
### Git及GitHub使用手册 #### 一、版本管理工具与Git简介 - **版本管理工具的概念**:版本管理工具是一种帮助软件开发者管理源代码变化的系统。它通过追踪每次更改来确保项目的每个版本都能被记录下来,从而方便...
- 在GitHub Account Settings -> Account Admin中找到API token,将其保存并在命令行使用`git config --global github.user "<your_username>"`和`git config --global github.token "<your_token>"`设置GitHub的...
### Git与GitHub使用详解 #### 一、Git简介与特性 **Git** 是一款非常流行的分布式版本控制系统,由Linus Torvalds于2005年为了更好地管理Linux内核开发而创建。与传统的集中式版本控制系统(如SVN)不同,Git的...
它被广泛应用于软件开发,特别是在开源社区,如GitHub、GitLab等平台上,开发者们通过Git来协作开发项目,管理和追踪代码的修改历史。 Git的核心概念包括仓库(Repository)、工作区(Working Directory)、暂存区...
根据提供的文件信息,我们可以推断出此文档主要围绕“尚硅谷Git&GitHub”这一主题展开。下面将基于这个主题深入探讨Git与GitHub的相关知识点。 ### 一、Git简介 #### 1.1 什么是Git? Git是一种分布式版本控制系统...
### Git和GitHub新手安装使用教程 #### 一、初始化本地仓库 Git 1. **下载与安装 Git** - 访问官方网址下载安装包:[https://git-scm.com/downloads](https://git-scm.com/downloads) - 按照安装向导提示完成...
### Git和Github笔记 #### 一、Git基础知识 ##### 1.1 版本管理概述 版本管理是一种软件工程实践,旨在记录文件或项目的不同版本,以便能够追踪变更历史、回溯到之前的状态或者比较不同版本之间的差异。这种方式...