Git 操作远程仓库(Github)

 

克隆远程仓库到本地

git clone git@github.com:TANGKUO/HIS.git  #会自动在当前目录下创建同名的仓库,然后克隆。远程仓库可以是自己的、也可以是他人的

 

 

 

 

同步更新到远程仓库

场景:要把本地仓库中的文件提交到远程仓库中,存储在远程仓库中,或者供其他人使用。

过程:先在github上新建一个同名的仓库,再把本地仓库同步到github仓库中

 

 

1、在github上新建一个仓库

一般都要有个README.md文件。

 

.gitignore是指定本地仓库同步到github上时,哪些类型的文件会被自动忽略|不同步|不上传,github已经给多种语言写好了模板,我们直接选择即可。比如java的大致如下:

# Compiled class file
*.class

# Log file
*.log

# Package Files #
*.jar
*.war
*.zip
*.rar

我们可根据需要修改。

 

许可证|协议指定他人对这个仓库可以进行哪些操作。可以点击右边的小叹号查看常用协议的内容。

 

github会自动把仓库标识为文件数最多的语言,比如仓库中.html文件最多,就把这个仓库标识为html项目;.java文件最多,就把这个仓库标识为java项目。

如果识别不正确,比如本来是java项目,但用的模板引擎有一大堆html文件,github把仓库标识为html项目,可以在项目中添加一个.gitattributes文件,和README.md一个级别,

*.html linguist-language=java
*.css linguist-language=java
*.js linguist-language=java

统计时,把.html、.css、.js文件都算作.java文件

 

 

 

2、添加远程仓库

git remote add github git@github.com:chenhongyong/HIS.git  #给远程仓库起一个别名,常用的别名比如origin、github

尽量使用ssh,因为配置秘钥后ssh会自动验证用户,https需要自己输远程仓库而定用户名、密码。

要有远程仓库的私钥|用户名、密码。

 

 

 

3、同步本地仓库到远程仓库

git push github master #指定远程仓库别名、要同步的本地分支,会将指定的本地分支同步到远程仓库

git push master #如果当前仓库只与一个远程仓库关联,则可缺省远程仓库
git push -u github master  #如果当前仓库与多个远程仓库关联,可以用-u指定一个默认的远程仓库,后续push未指定远程仓库时,默认push至默认的远程仓库

 

 

 

4、查看远程仓库信息

git remote  #只列出远程仓库别名
git remote
-v #列出远程仓库的详细信息,包括远程仓库地址

 

 

 

5、更新本地仓库

git pull github master:master  #从远程仓库获取更新。远程仓库名 本地分支:远程分支。只更新本地对应的分支

git pull 远程仓库名 本地分支名 #如果之前该本地分支已经推送到过远程仓库,或者从远程仓库的某个分支获取过更新,即本地分支、远程分支有过关联|对应关系,可缺省远程分支名

git pull 远程仓库名 #如果分支有过关联关系,且双方都只有一个分支,则本地分支名也可以省略

git pull #如果当前本地仓库只关联了一个远程仓库,或者用-u设置了默认关联的远程仓库,可以缺省远程仓库名。这种用得多,平时一个项目哪有多个仓库、多个分支

git fetch的用法和git pull完全相同,都是从远程分支获取更新,不同的是:

git fetch 只是从远程分支获取更新,不会将更新自动合并到本地分支中,需要再执行git merge将更新合并到当前本地分支中。

git pull会自动将更新合并到本地仓库中。

 

 

 

6、移除与远程仓库的关联关系

git remote github  #只是移除与本地仓库、远程仓库的关联关系,不再关联该远程仓库,并不是说物理删除远程仓库

 

posted @ 2020-04-07 20:04  chenhongyong  阅读(...)  评论(...编辑  收藏