我如何添加文件和文件夹到GitHub回购?

我在GitHub &mdash上创建了一个账户;我是新手。我在添加文件时遇到了一个问题。我已经添加了readme.txt。此外,我还有3个其他PHP文件和一个文件夹,包括图像。

如何添加文件和文件夹?我尝试了git pull,因为git push origin -u master显示了一个错误。

965980 次浏览

你可以使用git add,例如git add READMEgit add <folder>/*,甚至git add *来添加文件

然后使用git commit -m "<Message>"来提交文件

最后git push -u origin master来推送文件。

当你进行修改时,运行git status,它会给出修改过的文件列表,对所有文件使用git add *添加它们,或者你可以单独指定每个文件,然后是git commit -m <message>,最后是git push -u origin master

例如-假设你创建了一个文件README,运行git status给你

$ git status
# On branch master
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   README

运行git add README,文件将被暂存以便提交。然后再次运行git status,它会给你-文件已经添加并准备提交。

$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#   new file:   README
#


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

然后运行git commit -m 'Added README'

$ git commit -m 'Added README'
[master 6402a2e] Added README
0 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 README

最后,git push -u origin master来推送存储库origin的远程分支master

$ git push -u origin master
Counting objects: 4, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 267 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
To xxx@xxx.com:xxx/xxx.git
292c57a..6402a2e  master -> master
Branch master set up to track remote branch master from origin.

文件已经成功地推送到远程存储库。

运行git pull origin master来确保你已经吸收了任何上游的变化

$ git pull origin master
remote: Counting objects: 12, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 8 (delta 4), reused 7 (delta 3)
Unpacking objects: 100% (8/8), done.
From xxx.com:xxx/xxx
* branch            master     -> FETCH_HEAD
Updating e0ef362..6402a2e
Fast-forward
public/javascript/xxx.js |    5 ++---
1 files changed, 2 insertions(+), 3 deletions(-)
create mode 100644 README

如果你不想将上游的更改与本地存储库合并,运行git fetch来获取更改,然后运行git merge来合并更改。git pull只是fetchmerge的组合。

我个人使用gitimmersion - http://gitimmersion.com/来了解git,如果你需要一些文档和帮助,它是一个循序渐进的指南

您需要将存储库签出到本地机器上。然后您可以在本地机器上更改该文件夹。

git commit -am "added files"

该命令将所有文件提交到repo。

git push origin master

它将把你的主分支(我假设是你正在使用的)中的所有更改推到远程存储库起源(在这种情况下,github)

注意,从2012年12月初开始,你可以创建新文件直接从GitHub:

Create new File

ProTip™:你可以只使用URL来预填充文件名字段 在URL的末尾输入?filename=yournewfile.txt将预先填充文件名字段,名称为yournewfile.txt.

d

Linux和MacOS用户:

  1. 首先在github上创建存储库(Name=RepositoryName)。
  2. 打开终端并创建新目录(mkdir NewDirectory)。
  3. 复制你的ProjectFolder到这个NewDirectory。
  4. 将当前工作目录更改为NewDirectory。
  5. 执行命令
    1. git init
    2. git添加ProjectFolderName
    3. Git commit -m "第一次提交"
    4. git远程添加源https://github.com/YourGithubUsername/RepositoryName.git
    5. Git push -u origin master
    6. 李< / ol > < / >

在向github添加目录时,如果目录中包含。git文件,则使用“ls -a”检查该目录是否包含。git文件。当您试图在git中添加该目录时,目录中的.git文件将导致问题

简单的解决方案:

git init
git add =A
git commit -m "your commit"
git push -u origin master

如果你想添加文件夹到现有的repo ..然后将文件夹添加到本地项目代码

git rm --cached ./folderName
git add ./folderName

在那之后

git status
git commit -m "your commit"
git push -u origin master

在这里检查我的答案:https://stackoverflow.com/a/50039345/2647919

或者,甚至更好的只是“拖放”文件夹,在git浏览器中打开你的存储库。

在web门户中打开您的存储库,您将看到所有文件的列表。如果您最近刚刚创建了repo,并使用README初始化,那么您将只看到README清单。

打开你想要上传的文件夹。在浏览器中拖放列表。参见图片在这里。”

如果你想添加一个空文件夹,你可以添加一个'。把文件放在你的文件夹里。

这是因为git并不关心文件夹。

我在Windows上使用VS SSDT。我开始了一个项目,并设置了本地版本控制。后来我安装了git,并创建了一个Github repo。一旦我在Github上有我的回购,我抓住了URL,当我点击“发布到Github”按钮时,它问我的URL时,我把它放进了VS。

更改目录到主文件夹。然后“git加”;命令会起作用。

对我来说,我有一个文件夹,里面有未跟踪的文件和子文件夹,拯救我生命的解决方案是:

Git添加——all myfolder/

该解决方案使所有文件和子文件夹都被跟踪

我明白你的意思。

拖放功能的解决方案可能不再存在。当发生这种情况时,请参阅下面的链接: https://www.reddit.com/r/github/comments/meuxtg/github_drag_and_drop_not_working/ < / p >

如果有人想要避免shell和所有命令,并希望有一个UI来做到这一点,Github桌面是一种前进的方式。

安装和使用Github Desktop的步骤:

我假设你知道本地回购和远程回购之间的区别

  1. 安装Github桌面
  2. 使用github desktop在你的硬盘上创建一个存储库在本地。这将自动创建像.git和.gitattributes这样的文件。它还要求创建一个README。Md文件,最好的做法是创建它并编辑它,告诉读者你的项目概述,安装步骤等。自述文件。md在Markdown中呈现,也可以呈现HTML。在这里查看更多关于Markdown的信息:Markdown备忘单指南
  3. 复制粘贴所有你想要上传的文件夹和文件(基本上正确的术语是"推送")进入这个新创建的本地存储库。注意目录结构,因为将在远程存储库上复制完全相同的目录结构。
  4. 去github桌面,只要你粘贴文件在本地回购,你会看到他们的变化在这里。您所需要做的就是用注释提交这些更改。这将是你的“第一次或最初的承诺”。为了回购。
  5. 下一步Github回购将询问您是否要将这些发布到其远程存储库。单击“Publish"注释发布只是一个一次性操作。继续前进,你对本地回购所做的任何进一步的改变将在github桌面中看到,你需要再次遵循“Commit local->Fetch from remote->Push to remote”。的循环,只要你是唯一的开发人员在一个项目上工作,你不需要进入其他机制的git分支等。
  6. 要验证你的回购是否发布远程登录你的github配置文件在网上,看到你的存储库坐在那里。这是你的远程回购,你有效地从你的本地回购通过使用Github桌面创建。