René's URL Explorer Experiment


Title: project creation ignores default_branch and default-branch contradicts documentation · python-gitlab/python-gitlab · Discussion #3182 · GitHub

Open Graph Title: project creation ignores default_branch and default-branch contradicts documentation · python-gitlab/python-gitlab · Discussion #3182

X Title: project creation ignores default_branch and default-branch contradicts documentation · python-gitlab/python-gitlab · Discussion #3182

Description: project creation ignores default_branch and default-branch contradicts documentation

Open Graph Description: Description of the problem, including code/CLI snippet I've spent a couple hours on this, but basically when creating a project from the python package or from CLI, the default_branch (in SDK) and ...

X Description: Description of the problem, including code/CLI snippet I've spent a couple hours on this, but basically when creating a project from the python package or from CLI, the default_branch (in SDK) ...

Opengraph URL: https://github.com/python-gitlab/python-gitlab/discussions/3182

X: @github

direct link

Domain: patch-diff.githubusercontent.com


Hey, it has json ld scripts:
{"@context":"https://schema.org","@type":"QAPage","mainEntity":{"@type":"Question","name":"project creation ignores default_branch and default-branch contradicts documentation","text":"

Description of the problem, including code/CLI snippet

\n

I've spent a couple hours on this, but basically when creating a project from the python package or from CLI, the default_branch (in SDK) and --default-branch settings are ignored,

\n
    group_id = gl.groups.list(search=namespace)[0].id\n    project = gl.projects.create(\n        {\n            'name': project_name,\n            'path': repo_name,\n            'namespace_id': group_id,\n            'default_branch': 'master',\n        }\n    )\n
\n

The same thing happens from CLI:

\n
gitlab project create --name myproj --path myrepo --namespace-id GROUP_ID --default-branch master\n
\n

Expected Behavior

\n

After creation as described, the project object should show default_branch == \"master\" and the branch should show as protected.

\n

Regardless of being created from CLI or SDK.

\n

Actual Behavior

\n

The CLI and SDK both show that the default branch is \"main\". The console says that a default branch cannot be set on an empty repo.

\n

If this is not possible because of how the gitlab package is a thin wrapper over gitlab REST API, the readme in this repo should at least mention such discrepencies between the docs (auto generated from the REST API, shown in the CLI --help output) and actual behavior.

\n

Workaround (possibly a hack)

\n

Call these 2 functions, in order:

\n
def gitlab_project_repo_setup_content(project):\n    try:\n        project.files.get('README.md', ref='main')\n    except GitlabGetError:\n        print('Creating file in repo')\n        project.files.create(\n            {\n                'file_path': 'README.md',\n                'branch': 'main',\n                'content': '# Placeholder file',\n                'commit_message': 'Add README to initialize repository',\n            }\n        )\n\ndef gitlab_project_set_default_branch(project):\n    \"\"\"\n    Workaround for gitlab default branch can only be changed after there is content added:\n    if you set default_branch in the project.create(), it gets ignored, ie project.default_branch will\n    still be 'main'. Same goes for command line. It appears that there HAS to be at least one\n    file in the reop for the default branch to be changed.\n    \"\"\"\n    # verify that that readme exists, this will raise exception if not:\n    project.files.get('README.md', ref='main')\n\n    project.branches.create({'branch': 'master', 'ref': 'main'})\n    project.default_branch = 'master'\n    project.save()\n\n    project.protectedbranches.create({'name': 'master'})\n    project.protectedbranches.delete('main')\n    project.branches.delete('main')\n
\n

After running these 2, the git repo will have only master branch, and gitlab console will show this and that it is default and protected,

\n

Specifications

\n","upvoteCount":1,"answerCount":3,"acceptedAnswer":{"@type":"Answer","text":"

Maybe try with initialize_with_readme?

","upvoteCount":1,"url":"https://github.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077"}}}

route-pattern/_view_fragments/Voltron::DiscussionsFragmentsController/show/:user_id/:repository/:discussion_number/discussion_layout(.:format)
route-controllervoltron_discussions_fragments
route-actiondiscussion_layout
fetch-noncev2:e7cce1b3-9eed-4081-ee67-ef01421d33b8
current-catalog-service-hash9f0abe34da433c9b6db74bffa2466494a717b579a96b30a5d252e5090baea7be
request-idDA14:3F36AF:35AD166:49635BE:69738A47
html-safe-nonce9336a09165b69ef78c1a861b39e392cba7b31485e9041a917659c2f0fddc970c
visitor-payloadeyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQTE0OjNGMzZBRjozNUFEMTY2OjQ5NjM1QkU6Njk3MzhBNDciLCJ2aXNpdG9yX2lkIjoiNzEwMDEyMDkzNTQxMDQwMzkxMSIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9
visitor-hmac512b0d3f93333572d6da91001a41acd5ef7842770fcd5867462802e14396a40d
hovercard-subject-tagdiscussion:8247352
github-keyboard-shortcutsrepository,copilot
google-site-verificationApib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I
octolytics-urlhttps://collector.github.com/github/collect
analytics-location///voltron/discussions_fragments/discussion_layout
fb:app_id1401488693436528
apple-itunes-appapp-id=1477376905, app-argument=https://github.com/_view_fragments/Voltron::DiscussionsFragmentsController/show/python-gitlab/python-gitlab/3182/discussion_layout
twitter:imagehttps://opengraph.githubassets.com/269bb648032fb1952d01371a620d075fb823d349c35c507cf92f1f6cf7c5d917/python-gitlab/python-gitlab/discussions/3182
twitter:cardsummary_large_image
og:imagehttps://opengraph.githubassets.com/269bb648032fb1952d01371a620d075fb823d349c35c507cf92f1f6cf7c5d917/python-gitlab/python-gitlab/discussions/3182
og:image:altDescription of the problem, including code/CLI snippet I've spent a couple hours on this, but basically when creating a project from the python package or from CLI, the default_branch (in SDK) and ...
og:image:width1200
og:image:height600
og:site_nameGitHub
og:typeobject
hostnamegithub.com
expected-hostnamegithub.com
Nonef0b5e2d1da32de5a0b7bcfbc5ba007c93e8e63098fba29e1200efb674aa72e66
turbo-cache-controlno-preview
go-importgithub.com/python-gitlab/python-gitlab git https://github.com/python-gitlab/python-gitlab.git
octolytics-dimension-user_id28886265
octolytics-dimension-user_loginpython-gitlab
octolytics-dimension-repository_id8077625
octolytics-dimension-repository_nwopython-gitlab/python-gitlab
octolytics-dimension-repository_publictrue
octolytics-dimension-repository_is_forkfalse
octolytics-dimension-repository_network_root_id8077625
octolytics-dimension-repository_network_root_nwopython-gitlab/python-gitlab
turbo-body-classeslogged-out env-production page-responsive
disable-turbofalse
browser-stats-urlhttps://api.github.com/_private/browser/stats
browser-errors-urlhttps://api.github.com/_private/browser/errors
releasec96653671324f9b6d4c5f787435acf56a06087dd
ui-targetfull
theme-color#1e2327
color-schemelight dark

Links:

Skip to contenthttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#start-of-content
https://patch-diff.githubusercontent.com/
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-gitlab%2Fpython-gitlab%2Fdiscussions%2F3182
GitHub CopilotWrite better code with AIhttps://github.com/features/copilot
GitHub SparkBuild and deploy intelligent appshttps://github.com/features/spark
GitHub ModelsManage and compare promptshttps://github.com/features/models
MCP RegistryNewIntegrate external toolshttps://github.com/mcp
ActionsAutomate any workflowhttps://github.com/features/actions
CodespacesInstant dev environmentshttps://github.com/features/codespaces
IssuesPlan and track workhttps://github.com/features/issues
Code ReviewManage code changeshttps://github.com/features/code-review
GitHub Advanced SecurityFind and fix vulnerabilitieshttps://github.com/security/advanced-security
Code securitySecure your code as you buildhttps://github.com/security/advanced-security/code-security
Secret protectionStop leaks before they starthttps://github.com/security/advanced-security/secret-protection
Why GitHubhttps://github.com/why-github
Documentationhttps://docs.github.com
Bloghttps://github.blog
Changeloghttps://github.blog/changelog
Marketplacehttps://github.com/marketplace
View all featureshttps://github.com/features
Enterpriseshttps://github.com/enterprise
Small and medium teamshttps://github.com/team
Startupshttps://github.com/enterprise/startups
Nonprofitshttps://github.com/solutions/industry/nonprofits
App Modernizationhttps://github.com/solutions/use-case/app-modernization
DevSecOpshttps://github.com/solutions/use-case/devsecops
DevOpshttps://github.com/solutions/use-case/devops
CI/CDhttps://github.com/solutions/use-case/ci-cd
View all use caseshttps://github.com/solutions/use-case
Healthcarehttps://github.com/solutions/industry/healthcare
Financial serviceshttps://github.com/solutions/industry/financial-services
Manufacturinghttps://github.com/solutions/industry/manufacturing
Governmenthttps://github.com/solutions/industry/government
View all industrieshttps://github.com/solutions/industry
View all solutionshttps://github.com/solutions
AIhttps://github.com/resources/articles?topic=ai
Software Developmenthttps://github.com/resources/articles?topic=software-development
DevOpshttps://github.com/resources/articles?topic=devops
Securityhttps://github.com/resources/articles?topic=security
View all topicshttps://github.com/resources/articles
Customer storieshttps://github.com/customer-stories
Events & webinarshttps://github.com/resources/events
Ebooks & reportshttps://github.com/resources/whitepapers
Business insightshttps://github.com/solutions/executive-insights
GitHub Skillshttps://skills.github.com
Documentationhttps://docs.github.com
Customer supporthttps://support.github.com
Community forumhttps://github.com/orgs/community/discussions
Trust centerhttps://github.com/trust-center
Partnershttps://github.com/partners
GitHub SponsorsFund open source developershttps://github.com/sponsors
Security Labhttps://securitylab.github.com
Maintainer Communityhttps://maintainers.github.com
Acceleratorhttps://github.com/accelerator
Archive Programhttps://archiveprogram.github.com
Topicshttps://github.com/topics
Trendinghttps://github.com/trending
Collectionshttps://github.com/collections
Enterprise platformAI-powered developer platformhttps://github.com/enterprise
GitHub Advanced SecurityEnterprise-grade security featureshttps://github.com/security/advanced-security
Copilot for BusinessEnterprise-grade AI featureshttps://github.com/features/copilot/copilot-business
Premium SupportEnterprise-grade 24/7 supporthttps://github.com/premium-support
Pricinghttps://github.com/pricing
Search syntax tipshttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
documentationhttps://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax
Sign in https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-gitlab%2Fpython-gitlab%2Fdiscussions%2F3182
Sign up https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fdiscussions_fragments%2Fdiscussion_layout&source=header-repo&source_repo=python-gitlab%2Fpython-gitlab
Reloadhttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Reloadhttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Reloadhttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
python-gitlab https://patch-diff.githubusercontent.com/python-gitlab
python-gitlabhttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab
Notifications https://patch-diff.githubusercontent.com/login?return_to=%2Fpython-gitlab%2Fpython-gitlab
Fork 675 https://patch-diff.githubusercontent.com/login?return_to=%2Fpython-gitlab%2Fpython-gitlab
Star 2.4k https://patch-diff.githubusercontent.com/login?return_to=%2Fpython-gitlab%2Fpython-gitlab
Code https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab
Issues 26 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/issues
Pull requests 12 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/pulls
Discussions https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions
Actions https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/actions
Projects 0 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/projects
Security 0 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/security
Insights https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/pulse
Code https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab
Issues https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/issues
Pull requests https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/pulls
Discussions https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions
Actions https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/actions
Projects https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/projects
Security https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/security
Insights https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/pulse
Answered https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077
JohnVillalovoshttps://patch-diff.githubusercontent.com/JohnVillalovos
schollii https://patch-diff.githubusercontent.com/schollii
Q&Ahttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/categories/q-a
project creation ignores default_branch and default-branch contradicts documentation https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#top
schollii https://patch-diff.githubusercontent.com/schollii
Answered https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077
JohnVillalovoshttps://patch-diff.githubusercontent.com/JohnVillalovos
Return to tophttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#top
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
schollii https://patch-diff.githubusercontent.com/schollii
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussion-8247352
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
JohnVillalovos https://patch-diff.githubusercontent.com/JohnVillalovos
Apr 26, 2025 https://github.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077
View full answer https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077
Oldest https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182?sort=old
Newest https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182?sort=new
Top https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182?sort=top
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
JohnVillalovos https://patch-diff.githubusercontent.com/JohnVillalovos
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957077
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
scholliihttps://patch-diff.githubusercontent.com/schollii
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
schollii https://patch-diff.githubusercontent.com/schollii
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957078
@JohnVillalovoshttps://github.com/JohnVillalovos
#2869 (comment)https://github.com/python-gitlab/python-gitlab/issues/2869#issuecomment-2115284095
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/JohnVillalovos
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
JohnVillalovoshttps://patch-diff.githubusercontent.com/JohnVillalovos
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957094
@JohnVillalovoshttps://github.com/JohnVillalovos
#2869 (comment)https://github.com/python-gitlab/python-gitlab/issues/2869#issuecomment-2115284095
https://docs.gitlab.com/api/projects/#create-a-projecthttps://docs.gitlab.com/api/projects/#create-a-project
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/schollii
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
scholliihttps://patch-diff.githubusercontent.com/schollii
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957288
https://python-gitlab.readthedocs.io/en/stable/api-usage.html#https://python-gitlab.readthedocs.io/en/stable/api-usage.html
https://docs.gitlab.com/api/api_resources/https://docs.gitlab.com/api/api_resources/
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
schollii https://patch-diff.githubusercontent.com/schollii
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957221
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/JohnVillalovos
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
JohnVillalovoshttps://patch-diff.githubusercontent.com/JohnVillalovos
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957249
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/schollii
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
scholliihttps://patch-diff.githubusercontent.com/schollii
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957297
https://python-gitlab.readthedocs.io/en/stable/api-usage.html#https://python-gitlab.readthedocs.io/en/stable/api-usage.html
https://docs.gitlab.com/api/api_resources/https://docs.gitlab.com/api/api_resources/
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/JohnVillalovos
Please reload this pagehttps://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
JohnVillalovoshttps://patch-diff.githubusercontent.com/JohnVillalovos
Apr 26, 2025 https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182#discussioncomment-12957345
Give feedback.https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
Sign up for freehttps://patch-diff.githubusercontent.com/join?source=comment-repo
Sign in to commenthttps://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2Fpython-gitlab%2Fpython-gitlab%2Fdiscussions%2F3182
🙏 Q&A https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/categories/q-a
https://patch-diff.githubusercontent.com/schollii
https://patch-diff.githubusercontent.com/JohnVillalovos
#3181https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/issues/3181
https://patch-diff.githubusercontent.com/python-gitlab/python-gitlab/discussions/3182
https://patch-diff.githubusercontent.com/settings/replies?return_to=1
https://github.com
Termshttps://docs.github.com/site-policy/github-terms/github-terms-of-service
Privacyhttps://docs.github.com/site-policy/privacy-policies/github-privacy-statement
Securityhttps://github.com/security
Statushttps://www.githubstatus.com/
Communityhttps://github.community/
Docshttps://docs.github.com/
Contacthttps://support.github.com?tags=dotcom-footer

Viewport: width=device-width


URLs of crawlers that visited me.