1、安装
你可以试着在终端输入git,看看系统有没有安装Git,如果没有,直接输入
sudo apt-get install git
2、创建一个仓库
cd ~/Documents
mkdir learngit
cd learngit
pwd #pwd命令用于显示当前目录,输出如下
/home/haku/Documents/learngit
接着,通过git init命令把这个目录变成Git可以管理的仓库:
git init
3、添加文件
现在,我们编写一个readme.txt文件,内容如下:
Git is a version control system.
Git is free software.
注意该文件一定要在我们初始化的learngit目录或其子目录下,因为这是一个Git仓库,放到其他地方Git再厉害也找不到这个文件。
第一步 添加:
git add readme.txt
第二步 提交:
git commit -m "wrote a readme file"
4、返回上一个版本
有时候,我们刚刚提交上去一份文件,结果发现其中有几处小错误,就在本地文件进行了修改,然后又提交上去,刚提交上去,又发现还有错误没有修改,又修改本地文件,又提交上去,反复几次,最后还是觉得原来的是最好的,那怎么办呢,真实世界里没有后悔药买,但git世界里做到这一切并不难
git log
或者
git log --pretty=oneline
输入这个命令就可以看到这个仓库的历史提交记录,输入之后你会看到每一次版本都有记录的,而且唯一对应一份ID号(相当长的一份名称,具体是用什么算法生成的,有兴趣的同学可以自己去查资料研究一下)
git reset --hard HEAD^ #回退到上一个版本
git reset --hard xxxxx #xxxxx表示ID号,使用这个命令回退到指定的版本
在Git中,总是有后悔药可以吃的。Git还提供了一个命令 git reflog用来记录你的每一次命令。
使用 git status 来查看当前版本库的状态(就是有没有待提交的文件啊,等等)
git diff HEAD -- readme.txt 可以查看工作区(本地文件)和版本库(git提交上去的)里面最新版本的区别。
5、远程仓库
现在的情景是,我们已经在本地创建了一个Git仓库后,想把我们的代码放到github上供大家欣赏指导,并且让本地git和github上的远程仓库同步
首先,登录Github,然后在创建一个新的仓库:
在Repository name 填入和我们本地的仓库名相同,这里是learngit,点击创建仓库,就成功创建了一个新的github仓库。
创建好以后,千万别动,什么都别动,别填,反正我的经验是这样,创建好就别动它,然后在本地learngit仓库下运行命令:
git remote add origin git@github.com:yyfhaku/learngit.git
git remote add {your_upstream} https://{yourtoken}@github.com/{your_usename}/{your_repository}.git
git clone xxx.git
git remote rm origin
git remote add origin https://{token}@github.com/{username}/{repositories}.git
请千万注意,把上面的yyfhaku替换成你自己的Github账户名!!!!!!!!!!!!
下一步,就可以把本地库的所有内容推送到远程库上:
git push -u origin master
提交之后,以后再做修改,就直接使用
git push origin master
git push --set-upstream {your_upstream} {your_branch}
就可以了(前提是已经提交到本地git仓库下了)
SSH警告:
当你第一次使用Git的clone或者push命令连接Github时,会得到一个警告,这是因为Git使用SSH连接,而SSH连接在第一次验证Github服务器的Key时,需要你确认,输入 yes 回车即可。
6、从github下载文件到本地
git clone 仓库地址
如果是下载仓库里面的一份单独的文件,不下载整个仓库则 使用
svn checkout 对应的地址(这里的地址是要下载的文件的地址,把/tree/xxxx部分用/trunk代替即可)
参考文档: 廖雪峰Git
==============================2020-04-10更新===========================================
因为新的需求,需要再windos系统下使用git, 下载了一个git bash 安装好后使用,但是出现一些问题,参考网上博客解决了。
=============================2020-04-23更新======远程fork 分支管理相关======================
============================2020-5-5更新====添加一个比较全的git参考资料
git init
2027 git add README.md
2028 git commit -m "first commit"
2029 git branch -M main
2030 git remote add origin https://token@github.com/USER/project.git
2031 git push -u origin main
2032 git config --global user.name "USER"
2033 git config --global user.email "email"
git push -u origin main
git tag v1.0
git push --tags