tag:blogger.com,1999:blog-82952783198438685302024-03-20T08:07:13.272-07:00me.codeUnknownnoreply@blogger.comBlogger154125tag:blogger.com,1999:blog-8295278319843868530.post-73869287140623045182024-03-19T14:22:00.000-07:002024-03-19T14:22:13.771-07:00SQL Server query to HTML table email - justify text<p> <span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">DECLARE</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> @tableHTML </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">NVARCHAR</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">(</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">MAX</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">);</span></p><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">SET</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> @tableHTML =
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<H3 style="font-family:verdana;color:darkblue;">Header1</H3>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<H5 style="font-family:verdana;color:darkblue;">SubHeader:</H5>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<H6 style="font-family:verdana;color:darkblue;">SubHeader2<br> SubHeader3</H6>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<table border="1";>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<tr>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<th style="text-align:right;">MiscColumn1</th>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<th style="text-align:right;">MiscColumn2</th>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<th style="text-align:right;">MiscColumn3</th>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<th style="text-align:right;">MiscColumn4</th>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'<th style="text-align:right;">MiscColumn5</th>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> +
</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">CAST</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> (
(</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">SELECT</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">
td = SE.MiscColumn1, </span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">''</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">,
td = SE.MiscColumn2, </span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">''</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">,
td = SE.MiscColumn3, </span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">''</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">,
td = SE.MiscColumn4, </span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">''</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">,
td = SE.MiscColumn5, </span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">''</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">
</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">FROM</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> database.dbo.table SE
</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">FOR</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">XML</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">PATH</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">(</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'tr'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">), </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">TYPE</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">
) </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">AS</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"> </span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">NVARCHAR</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">(</span><span class="hljs-keyword" style="background-color: #f2f2f2; box-sizing: inherit; color: #0101fd; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">MAX</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">)
) +
N</span><span class="hljs-string" style="background-color: #f2f2f2; box-sizing: inherit; color: #a31515; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; outline-color: inherit; white-space: pre;">'</table>'</span><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;">;
EXEC msdb.dbo.sp_send_dbmail
@profile_name = 'Mail_Profile',
@recipients='my@email.com',
@copy_recipients = '',
@subject = 'Sending an email',
@body = @tableHTML,
@body_format = 'HTML'; </span><div><span style="background-color: #f2f2f2; color: #161616; font-family: SFMono-Regular, Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 14px; white-space: pre;"><br /></span></div><div><span style="background-color: #f2f2f2; font-size: 14px; white-space: pre;"><span style="color: #161616; font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, Courier, monospace;">https://learn.microsoft.com/en-us/answers/questions/1409670/sql-server-query-to-html-table-email-justify-text</span></span></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-26600547628324911702024-03-09T09:13:00.000-08:002024-03-09T09:13:26.938-08:00How To Enable Remote Desktop Protocol Using xrdp on Ubuntu 22.04<p> <span style="font-family: Inter, sans-serif; font-size: 20px;">https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04</span></p><div class="TutorialTemplateStyles__StyledRecordHeaderContainer-sc-51d78bd4-0 ezTMn" style="box-sizing: border-box; line-height: 1.5; margin: 40px 0px 0px; width: 752px;"><h1 class="HeadingStyles__StyledH1-sc-73f0758c-0 fUezwX TutorialTemplate___StyledHeading2-sc-c876722d-1 bVUSub" style="box-sizing: border-box; color: #031b4e; font-family: Epilogue, sans-serif; font-size: 32px; letter-spacing: -0.5px; line-height: 40px; margin: 0px; padding: 0px; word-break: break-word;"><br /></h1><h1 class="HeadingStyles__StyledH1-sc-73f0758c-0 fUezwX TutorialTemplate___StyledHeading2-sc-c876722d-1 bVUSub" style="box-sizing: border-box; color: #031b4e; font-family: Epilogue, sans-serif; font-size: 32px; letter-spacing: -0.5px; line-height: 40px; margin: 0px; padding: 0px; word-break: break-word;">How To Enable Remote Desktop Protocol Using xrdp on Ubuntu 22.04</h1><div class="TutorialTemplateStyles__StyledRecordMetaContainer-sc-51d78bd4-2 bgCCNJ" style="align-items: center; box-sizing: border-box; display: flex; flex-wrap: wrap; font-family: Inter, sans-serif; font-size: 20px; margin: 0px;"><div class="TutorialTemplateStyles__StyledRecordMetaItemDate-sc-51d78bd4-7 lbSyuY" style="box-sizing: border-box; color: #4d5b7c; font-size: 16px; line-height: 24px; margin: 8px 0px;">Published on September 20, 2022</div><ul class="TutorialTemplateStyles__StyledRecordMetaList-sc-51d78bd4-3 kegexx" style="align-items: center; box-sizing: border-box; color: #031b4e; display: flex; flex-flow: wrap; list-style: none; margin: 0px auto; padding: 10px 0px; width: 752px;"><li class="TutorialTemplateStyles__StyledRecordMetaItem-sc-51d78bd4-4 SUwpC" style="box-sizing: border-box; color: #333333; font-size: 13px; line-height: 1.6; list-style: none; margin: 0px; padding-right: 5px;"><a class="TagStyles__StyledTag-sc-a75ae9ac-0 jUtDLQ" href="https://www.digitalocean.com/community/tags/networking" style="background: rgb(239, 242, 251); border-radius: 8px; box-sizing: border-box; color: #4d5b7c; cursor: pointer; display: inline-block; font-size: 14px; line-height: 1.71429; margin: 4px 8px 4px 0px; padding: 0px 8px; text-align: center; text-decoration-line: none; transition: background 0.15s linear 0s, color 0.15s linear 0s;" title="Networking">Networking</a></li><li class="TutorialTemplateStyles__StyledRecordMetaItem-sc-51d78bd4-4 SUwpC" style="box-sizing: border-box; color: #333333; font-size: 13px; line-height: 1.6; list-style: none; margin: 0px; padding-right: 5px;"><a class="TagStyles__StyledTag-sc-a75ae9ac-0 jUtDLQ" href="https://www.digitalocean.com/community/tags/ubuntu" style="background: rgb(239, 242, 251); border-radius: 8px; box-sizing: border-box; color: #4d5b7c; cursor: pointer; display: inline-block; font-size: 14px; line-height: 1.71429; margin: 4px 8px 4px 0px; padding: 0px 8px; text-align: center; text-decoration-line: none; transition: background 0.15s linear 0s, color 0.15s linear 0s;" title="Ubuntu">Ubuntu</a></li><li class="TutorialTemplateStyles__StyledRecordMetaItem-sc-51d78bd4-4 SUwpC" style="box-sizing: border-box; color: #333333; font-size: 13px; line-height: 1.6; list-style: none; margin: 0px; padding-right: 5px;"><br /></li></ul><div class="TutorialTemplateStyles__StyledAuthorDateContainer-sc-51d78bd4-5 kvuPla" style="align-items: center; box-sizing: border-box; display: flex; gap: 16px; margin: 16px 0px 0px;"><img alt="Default avatar" class="TutorialTemplateStyles__StyledAvatarSmall-sc-51d78bd4-10 dXcVcN" src="https://www.digitalocean.com/_next/static/media/default-avatar.14b0d31d.jpeg" style="border-radius: 50%; border: 1px solid rgb(255, 255, 255); box-sizing: border-box; display: block; height: 48px; margin: 0px; max-width: 100%; object-fit: contain; vertical-align: middle; width: 48px;" /><div class="TutorialTemplateStyles__StyledRecordMetaItemAuthor-sc-51d78bd4-6 cULOty" style="box-sizing: border-box; color: #081b4b; display: flex; flex-direction: column; font-size: 16px; list-style: none; margin: 0px;"><p style="box-sizing: border-box; margin: 0px;">By <a class="TutorialTemplateStyles__StyledRecordMetaItemAuthorHighlight-sc-51d78bd4-9 vfdvg" href="https://www.digitalocean.com/community/users/aggrag" size="16" style="box-sizing: border-box; color: #0069ff; cursor: pointer; margin: 0px;">Raghav Aggarwal</a></p></div></div></div><span style="font-family: Inter, sans-serif;"><span style="font-size: 20px;"><br /><img alt="How To Enable Remote Desktop Protocol Using xrdp on Ubuntu 22.04" class="TutorialTemplateStyles__StyledRecordHeaderImage-sc-51d78bd4-1 cGmjFL" src="https://www.digitalocean.com/_next/static/media/intro-to-cloud.d49bc5f7.jpeg" style="border-radius: 24px; border-style: none; box-sizing: border-box; display: block; margin: 40px 0px; max-width: 100%; width: 752px;" title="How To Enable Remote Desktop Protocol Using xrdp on Ubuntu 22.04" /></span></span></div><div class="Markdown_markdown___3RCz" style="box-sizing: border-box; color: #4d5b7c; font-family: Inter, sans-serif; margin: 0px; position: relative; z-index: 0;"><p style="box-sizing: border-box; line-height: 1.5; margin: 0px 0px 1em;"><em style="box-sizing: border-box; margin: 0px;">The author selected the <a href="https://www.brightfunds.org/funds/write-for-donations-covid-19-relief-fund" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">COVID-19 Relief Fund</a> to receive a donation as part of the <a href="https://do.co/w4do-cta" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Write for DOnations</a> program.</em></p><h3 id="introduction" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#introduction" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Introduction</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#introduction" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h3><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><a href="https://learn.microsoft.com/en-us/troubleshoot/windows-server/remote/understanding-remote-desktop-protocol" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Remote Desktop Protocol</a> (RDP) is a network protocol developed by Microsoft that allows users to remotely access and interact with the graphical user interface of a remote Windows server. RDP works on the client-server model, where an RDP client is installed on a local machine, and an RDP server is installed on the remote server.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">RDP is widely used for Windows remote connections, but you can also access and interact with the graphical user interface of a remote Linux server by using a tool like <a href="http://xrdp.org/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">xrdp</a>, an open-source implementation of the RDP server.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">In this tutorial, you will install and configure an RDP server using xrdp on a Ubuntu 22.04 server and access it using an RDP client from your local machine. You will understand how to establish access to a remote Linux server by configuring and using an RDP connection.</p><div class="callout info" style="background-color: #c6e3ff; border-radius: 16px; box-sizing: border-box; color: #000c2a; font-size: 15px; line-height: 1.5em; margin: 0px 0px 1.5em; padding: 1em 1.25em; position: relative; z-index: 0;"><p style="box-sizing: border-box; line-height: 1.5; margin: 0px;">Deploy your frontend applications from GitHub using <a href="https://www.digitalocean.com/products/app-platform" style="background: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)) center bottom / 1px 1px repeat-x; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">DigitalOcean App Platform</a>. Let DigitalOcean focus on scaling your app.</p></div><h2 id="prerequisites" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#prerequisites" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Prerequisites</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#prerequisites" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">To complete this tutorial, you will need:</p><ul style="box-sizing: border-box; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.7em; padding: 0px 0px 0px 2.5em;"><li style="box-sizing: border-box; margin: 0px;"><p style="box-sizing: border-box; line-height: 1.5; margin: 0px;">One Ubuntu 22.04 server with a non-root user with <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">sudo</code> privileges, a firewall, and at least 1GB of RAM, which you can set up by following <a href="https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-22-04" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">the Ubuntu 22.04 initial server setup guide</a>.</p></li><li style="box-sizing: border-box; margin: 0px;"><p style="box-sizing: border-box; line-height: 1.5; margin: 0px 0px 1em;">A local computer with an RDP client installed. A list of available RDP clients for different operating systems is provided below:</p><ul style="box-sizing: border-box; list-style: disc; margin: 0px 0px 1.7em; padding: 0px 0px 0px 2.5em;"><li style="box-sizing: border-box; margin: 0px;">On Windows, you can use the default Remote Desktop Connection application.</li><li style="box-sizing: border-box; margin: 0px;">On macOS, you can use the <a href="https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/remote-desktop-mac" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Microsoft Remote Desktop application</a>.</li><li style="box-sizing: border-box; margin: 0px;">On Linux, you can use <a href="https://www.freerdp.com/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">FreeRDP</a>, or <a href="https://remmina.org/how-to-install-remmina/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Remmina</a>.</li></ul></li></ul><h2 id="step-1-installing-a-desktop-environment-on-ubuntu" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-1-installing-a-desktop-environment-on-ubuntu" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Step 1 — Installing a Desktop Environment on Ubuntu</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-1-installing-a-desktop-environment-on-ubuntu" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">In this step, you will install and configure a desktop environment on your Ubuntu server. By default, an Ubuntu server comes with a terminal environment only. A desktop environment will need to be installed to access a user interface.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">From the available options for Ubuntu, you will install the <a href="https://www.xfce.org/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Xfce</a> desktop environment. Xfce offers a lightweight, user-friendly desktop environment for Linux-based systems.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">To begin, connect to your server using SSH and update the list of available packages using the following command:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">apt</span> update
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Next, install the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce</code> and <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce-goodies</code> packages on your server:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">apt</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">install</span> xfce4 xfce4-goodies <span class="token parameter variable" style="background: none; border-radius: 0px; box-sizing: border-box; color: #b1e490; display: inline; margin: 0px; padding: 0px; text-shadow: none;">-y</span>
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You will be prompted to choose a display manager, which is a program that manages graphical login mechanisms and user sessions. You can select any option from the list of available display managers, but this tutorial will use <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">gdm3</code>.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">After installing the desktop environment, you will now install xrdp on your server.</p><h2 id="step-2-installing-xrdp-on-ubuntu" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-2-installing-xrdp-on-ubuntu" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Step 2 — Installing xrdp on Ubuntu</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-2-installing-xrdp-on-ubuntu" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">xrdp is an open-source implementation of the RDP server that allows RDP connections for Linux-based servers. In this step, you will install the xrdp on your Ubuntu server.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">To install xrdp, run the following command in the terminal:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">apt</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">install</span> xrdp <span class="token parameter variable" style="background: none; border-radius: 0px; box-sizing: border-box; color: #b1e490; display: inline; margin: 0px; padding: 0px; text-shadow: none;">-y</span>
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">After installing xrdp, verify the status of xrdp using <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">systemctl</code>:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> systemctl status xrdp
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">This command will show the status as <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">active (running)</code>:</p><pre style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 1em; margin-top: 1em; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: 0px center; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; white-space: pre;"><div class="secondary-code-label" style="box-sizing: border-box; color: #9fddff; margin: 0px 0px 4px;" title="Output">Output</div>● xrdp.service - xrdp daemon
Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
Active: **active (running)** since Sun 2022-08-07 13:00:44 UTC; 26s ago
Docs: man:xrdp(8)
man:xrdp.ini(5)
Main PID: 17904 (xrdp)
Tasks: 1 (limit: 1131)
Memory: 1016.0K
CGroup: /system.slice/xrdp.service
└─17904 /usr/sbin/xrdp
</code></pre><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">If the status of xrdp is not <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">running</code>, you may have to start the service manually with this command:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> systemctl start xrdp
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">After executing the above command, verify the status again to ensure xrdp is in a <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">running</code> state.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You have now installed xrdp on your server. Next, you will review the xrdp configuration to accept connections from remote clients.</p><h2 id="step-3-configuring-xrdp-and-updating-your-firewall" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-3-configuring-xrdp-and-updating-your-firewall" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Step 3 — Configuring xrdp and Updating Your Firewall</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-3-configuring-xrdp-and-updating-your-firewall" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">In this step, you will review the default configuration of xrdp, which is stored under <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">/etc/xrdp/xrdp.ini</code>, and add a configuration for an RDP connection. You will also update the firewall settings.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xrdp.ini</code> is the default configuration file to set up RDP connections to the xrdp server. The configuration file can be modified and customized to meet the RDP connection requirements.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Open the file in <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">nano</code> text editor or any editor of your choice:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">nano</span> /etc/xrdp/xrdp.ini
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">The configuration file contains different sections:</p><ul style="box-sizing: border-box; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.7em; padding: 0px 0px 0px 2.5em;"><li style="box-sizing: border-box; margin: 0px;"><span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Globals</span> defines some global configuration settings for xrdp.</li><li style="box-sizing: border-box; margin: 0px;"><span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Logging</span> defines logging subsystem parameters for logs.</li><li style="box-sizing: border-box; margin: 0px;"><span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Channels</span> defines multiple channel parameters that RDP supports.</li><li style="box-sizing: border-box; margin: 0px;"><span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Session types</span> defines multiple supported session types by xrdp. Every session type configuration is defined as a separate section under its session type name enclosed in square brackets, such as <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">[Xorg]</code> and <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">[XVnc]</code>. There is no <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">[Sessions types]</code> heading in the file; instead, it is written as a comment.</li></ul><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">In the configuration file, navigate to the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">Session types</code> section. You will find multiple supported session types and their parameters listed:</p><pre style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 1em; margin-top: 1em; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: 0px center; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; white-space: pre;"><div class="secondary-code-label" style="box-sizing: border-box; color: #9fddff; margin: 0px 0px 4px;" title="Output">Output</div>...
;
; Session types
;
; Some session types such as Xorg, X11rdp, and Xvnc start a display server.
; Startup command-line parameters for the display server are configured
; in sesman.ini. See and configure also sesman.ini.
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20
[Xvnc]
name=Xvnc
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=-1
#xserverbpp=24
#delay_ms=2000
[vnc-any]
...
[neutrinordp-any]
...
...
</code></pre><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">By default, the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">username</code> and <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">password</code> parameters are set to <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">ask</code>, which means the user will be prompted to enter their username and password to connect over RDP. Parameters, such as <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">name</code>, <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">username</code>, and <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">password</code>, can be modified if necessary. For the initial RDP connection to the server, the default configuration will suffice.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Save and close the file when finished.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Now move to your user’s home directory if you are not there already:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token builtin class-name" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">cd</span> ~
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Next, you will create a <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">.xsession</code> file under <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">/home/sammy</code> and add the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce4-session</code> as the session manager to use upon login:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token builtin class-name" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">echo</span> <span class="token string" style="background: none; border-radius: 0px; box-sizing: border-box; color: #b1e490; display: inline; margin: 0px; padding: 0px; text-shadow: none;">"xfce4-session"</span> <span class="token operator" style="background: none; border-radius: 0px; box-sizing: border-box; display: inline; margin: 0px; padding: 0px; text-shadow: none;">|</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">tee</span> .xsession
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">tee</code> writes the echoed string <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">"xfce4-session"</code> to the file <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">.xsession</code>. The above configuration ensures that <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce4-session</code> is used as a session manager upon graphical login request. As a result of installing<code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce</code> as your desktop environment, <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">xfce4-session</code> serves as its session manager. If you don’t include this information in the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">.xsession</code> file, no session manager is chosen, and the RDP session will fail to connect to the graphical display.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Restart the xrdp server:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> systemctl restart xrdp
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Next, you will configure your firewall to allow remote connections from your public IP on port <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">3389</code>. An RDP connection serves on TCP/IP port <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">3389</code>. To access the remote server over RDP, you must allow port <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">3389</code> in your firewall.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">First, find the public IP for your local machine:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command environment-local language-bash" style="background: rgb(247, 248, 251); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #11192e; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #7300b9; display: inline; margin: 0px; padding: 0px; text-shadow: none;">curl</span> ifconfig.me
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">On Windows, use the Windows Command Prompt to run this command.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">curl</code> places a request on <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">ifconfig.me</code> that returns your public IP as an output:</p><pre class="environment-local" style="background: rgb(247, 248, 251); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #11192e; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 1em; margin-top: 1em; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: 0px center; border-radius: 0px; box-sizing: border-box; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; white-space: pre;"><div class="secondary-code-label" style="box-sizing: border-box; color: #081b4b; margin: 0px 0px 4px;" title="Output">Output</div>...
<mark style="background: rgb(227, 232, 244); border-radius: 2px; box-sizing: border-box; display: inline; line-height: calc(1.4em + 1px); margin: 0px; padding: 2px 6px;">your_local_ip</mark>
</code></pre><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Next, allow access to the RDP port <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">3389</code> on your remote server, replacing <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;"><mark style="background: rgba(255, 192, 1, 0.3); border-radius: 2px; box-sizing: border-box; display: inline; line-height: calc(1.4em + 1px); margin: 0px; padding: 2px 6px;">your_local_ip</mark></code> with the output of the last command:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> ufw allow from <mark style="background: rgb(41, 51, 77); border-radius: 2px; box-sizing: border-box; display: inline; line-height: calc(1.4em + 1px); margin: 0px; padding: 2px 6px;">your_local_ip</mark>/32 to any port <span class="token number" style="background: none; border-radius: 0px; box-sizing: border-box; color: #0be1ff; display: inline; margin: 0px; padding: 0px; text-shadow: none;">3389</span>
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Verify the status of your <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">UFW</code> firewall:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> ufw status
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">The output should look like the following:</p><pre style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 1em; margin-top: 1em; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: 0px center; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; white-space: pre;"><div class="secondary-code-label" style="box-sizing: border-box; color: #9fddff; margin: 0px 0px 4px;" title="Output">Output</div>Status: Active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
3389 ALLOW <mark style="background: rgb(41, 51, 77); border-radius: 2px; box-sizing: border-box; display: inline; line-height: calc(1.4em + 1px); margin: 0px; padding: 2px 6px;">your_local_ip</mark>
OpenSSH (v6) ALLOW Anywhere (v6)
...
</code></pre><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You have now enabled port <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">3389</code> to accept connections from your public IP. Next, you will test your local machine’s RDP connection to your remote server.</p><h2 id="step-4-testing-the-rdp-connection" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-4-testing-the-rdp-connection" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Step 4 — Testing the RDP Connection</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#step-4-testing-the-rdp-connection" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">In this step, you will test the RDP connection from your local machine. The sections below include actions for testing the connection on Windows, macOS, and Linux machines.</p><h3 id="testing-the-rdp-connection-on-windows" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-windows" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Testing the RDP Connection on Windows</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-windows" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h3><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">To test the connection using the Remote Desktop Connection client on Windows, first launch the Remote Desktop Connection app.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Enter your remote server’s public IP and username into the fillable text boxes for <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Computer</span> and <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">User name</span>. You may need to press the down arrow for <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Show Options</span> to input the username:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture of the Remote Desktop Connection Client initial logon page" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/gkks66I.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Press the <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Connect</span> button. If you receive an alert that the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">Remote Desktop can't connect to the remote computer</code>, check that you have turned on the Remote Desktop option in your system settings.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Yes</span> if you receive the identity verification popup:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture of the Identity Verification popup" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/tVINlll.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Then, enter your remote server’s username (<code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">sammy</code>) and the password you created for user <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">sammy</code> during the initial server setup. Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Ok</span>.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture display the xrdp login screen" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/9qRGWoV.jpg" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Once you have logged in, you should be able to access your Ubuntu Desktop environment:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screenapture of the remote Ubuntu Desktop" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/LnkM9F0.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Using RDP, you successfully connected to your remote Ubuntu server from your local machine. You can close it with the exit button when you have finished using your graphical desktop.</p><h3 id="testing-the-rdp-connection-on-macos" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-macos" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Testing the RDP Connection on macOS</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-macos" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h3><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">To test the connection using the Remote Desktop Connection client on macOS, first launch the Microsoft Remote Desktop Connection app.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Add PC</span>, then enter your remote server’s public IP in the fillable box:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture showing the "Add PC" setup page with an empty box for the remote server's IP address" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/xdf89a.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You can <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Add a user account</span> when setting up the connection:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture showing the "Add a username account" option" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/bas53b.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">If you do not add a user during setup, you will be prompted for your user login credentials:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture showing the "Enter your user account" prompt" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/yt9a3v.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Yes</span> to bypass the identity verification popup:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture showing the identity verification prompt" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/tp0vf4x.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Once you have logged in, you can access your Ubuntu remote desktop. You can close it with the exit button when you have finished using your graphical desktop.</p><h3 id="testing-the-rdp-connection-on-linux" style="box-sizing: border-box; font-family: Epilogue, sans-serif; margin: 1em 0px;"><a href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-linux" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; margin: 0px; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Testing the RDP Connection on Linux</a><a aria-hidden="true" class="hash-anchor" href="https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04#testing-the-rdp-connection-on-linux" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 0px 0px; border-bottom: none; box-sizing: border-box; color: #8a96b5; font-size: 0.85em; margin: 0px 0px 0px 0.5em; opacity: 0; text-decoration-line: none; transition: opacity 0.2s ease-in-out 0s, visibility 0s linear 0.2s; visibility: hidden;"></a></h3><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You will need an RDP client to test the RDP connection on a local Linux machine. First, install the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">remmina</code> RDP client for Ubuntu:</p><div class="code-toolbar" style="box-sizing: border-box; margin: 1em 0px; position: relative;"><pre class="prefixed command language-bash" style="background: rgb(17, 25, 46); border-radius: 16px; box-shadow: rgba(17, 25, 46, 0.1) 0px 0px 0px 2px inset; box-sizing: border-box; color: #f7f8fb; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto; padding: 24px; white-space: normal;"><code style="background: transparent; border-radius: 0px; box-sizing: border-box; color: inherit; font-family: monospace, monospace; line-height: 22px; margin: 0px; padding: 0px; text-shadow: none;"><ol style="box-sizing: border-box; list-style: none; margin: 0px; padding: 0px;"><li data-prefix="$" style="box-sizing: border-box; margin: 0px; padding: 0px; white-space: pre;"><span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">sudo</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">apt</span> <span class="token function" style="background: none; border-radius: 0px; box-sizing: border-box; color: #ffaf8c; display: inline; margin: 0px; padding: 0px; text-shadow: none;">install</span> remmina
</li></ol></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; position: absolute; right: 24px; top: 24px;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px;"><button style="appearance: button; background: rgb(105, 111, 176); border-color: initial; border-radius: 10px; border-style: initial; border-width: 0px; color: white; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 0.9em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; overflow: visible; padding: 6px 8px; transition: color 0.25s ease 0s, background 0.25s ease 0s; user-select: none;" type="button">Copy</button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Select <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">y</code> if prompted to complete the installation. This command will install <a href="https://remmina.org/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Remmina</a>, an open-source remote desktop client on your Ubuntu system using <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">apt</code>. For other Linux distributions, you can review the <a href="https://remmina.org/how-to-install-remmina/" style="background-attachment: initial; background-clip: initial; background-image: linear-gradient(rgb(0, 105, 255), rgb(0, 105, 255)); background-origin: initial; background-position: center bottom; background-repeat: repeat-x; background-size: 1px 1px; border-bottom: none; box-sizing: border-box; color: #0069ff; margin: 0px; overflow-wrap: break-word; text-decoration-line: none; transition: background 0.3s ease-in-out 0s, color 0.3s ease-in-out 0s;">Remmina documentation for installation</a>.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Once installed, launch the <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">remmina</code> application on your local Linux machine and enter your remote server’s public IP in the fillable box. Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Enter</span> on your keyboard to connect to your remote desktop.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screenapture showing the Remmina client with a blurred IP address entered in the RDP box" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/sLSA16y_d.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Then, enter your remote server’s username (for this tutorial, the username is <code style="background-color: #e3e8f4; border-radius: 8px; box-sizing: border-box; color: #24335a; font-family: monospace, monospace; font-size: 14px; line-height: 22px; margin: 0px; padding: 3px;">sammy</code>) and the password you created for the user during the initial server setup. Press <span style="box-sizing: border-box; font-weight: bolder; margin: 0px;">Ok</span>.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;"><img alt="Screencapture showing the xrdp Login Screen with selected for session type, filled in the username box, and a redacted password in the password box" src="https://deved-images.nyc3.cdn.digitaloceanspaces.com/68477/71IeuAm_d.png" style="border-radius: 16px; border: 2px solid rgb(227, 232, 244); box-sizing: border-box; display: block; margin: 1rem auto; max-width: 100%;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">You may need to enter your user’s password again to unlock the remote desktop.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Once you have logged in, you should be able to access your Ubuntu Desktop environment.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Using RDP, you successfully connected to your remote Ubuntu server from your local machine. You can close it with the exit button when you have finished using your graphical desktop.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px;">Once you have ensured the remote connection works, you can use this sequence whenever you need to use the graphical interface for your remote Linux server.</p></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-87762546508665660542024-02-29T09:15:00.000-08:002024-02-29T09:15:54.590-08:00sql server renobrar columnas<p> <span class="hljs-keyword" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">EXEC</span><span style="color: #0c0d0e; font-family: inherit; font-size: var(--_pr-code-fs); font-style: inherit; font-variant-caps: inherit; font-variant-ligatures: inherit; font-weight: inherit; white-space: inherit;"> sp_RENAME </span><span class="hljs-string" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">'table_name.old_name'</span><span style="color: #0c0d0e; font-family: inherit; font-size: var(--_pr-code-fs); font-style: inherit; font-variant-caps: inherit; font-variant-ligatures: inherit; font-weight: inherit; white-space: inherit;">, </span><span class="hljs-string" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">'new_name'</span><span style="color: #0c0d0e; font-family: inherit; font-size: var(--_pr-code-fs); font-style: inherit; font-variant-caps: inherit; font-variant-ligatures: inherit; font-weight: inherit; white-space: inherit;">, </span><span class="hljs-string" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">'COLUMN'</span></p><pre class="lang-sql s-code-block" style="--_cb-line-numbers-bg: var(--black-150); --theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: calc(1.5em); margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); scrollbar-color: var(--scrollbar) transparent; vertical-align: baseline; width: auto;"><code class="hljs language-sql" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">
</code></pre>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-55503905546669049812024-01-19T10:27:00.000-08:002024-01-19T10:27:29.627-08:00adding gitignore<p> <img alt="Enter image description here" src="https://i.stack.imgur.com/d7BBV.jpg" style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; max-width: 100%; padding: 0px; vertical-align: bottom;" /></p><p style="--_pr-img-mb: 0; --theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #0c0d0e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px 0px 1.1em; padding: 0px; vertical-align: baseline;">If the repository already exists, you have to do the following:</p><ol style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); background-color: white; border: 0px; box-sizing: inherit; color: #0c0d0e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variant-position: inherit; font-variation-settings: inherit; line-height: inherit; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.1em 30px; padding: 0px; vertical-align: baseline;"><li style="--_pr-blockquote-mt: calc(1.1em / 2); --_pr-img-mb: 0; --theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px 0px calc(0.55em); overflow-wrap: break-word; padding: 0px; vertical-align: baseline;"><code style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); background-color: var(--black-200); border-radius: var(--br-sm); border: 0px; box-sizing: inherit; color: var(--black-600); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: var(--su2) var(--su4); vertical-align: baseline; white-space-collapse: preserve;">git rm -r --cached .</code></li><li style="--_pr-blockquote-mt: calc(1.1em / 2); --_pr-img-mb: 0; --theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px 0px calc(0.55em); overflow-wrap: break-word; padding: 0px; vertical-align: baseline;"><code style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); background-color: var(--black-200); border-radius: var(--br-sm); border: 0px; box-sizing: inherit; color: var(--black-600); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: var(--su2) var(--su4); vertical-align: baseline; white-space-collapse: preserve;">git add .</code></li><li style="--_pr-blockquote-mt: calc(1.1em / 2); --_pr-img-mb: 0; --theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline;"><code style="--theme-background-attachment: auto; --theme-background-color: var(--white); --theme-background-position: top left; --theme-background-repeat: repeat; --theme-background-size: auto; --theme-base-primary-color-h: 27; --theme-base-primary-color-l: 48%; --theme-base-primary-color-s: 89%; --theme-body-font-color: var(--black-600); --theme-body-font-family: var(--ff-sans); --theme-button-active-background-color: initial; --theme-button-color: initial; --theme-button-hover-background-color: initial; --theme-button-hover-color: initial; --theme-button-outlined-border-color: initial; --theme-button-outlined-selected-border-color: initial; --theme-button-primary-active-background-color: initial; --theme-button-primary-active-color: initial; --theme-button-primary-background-color: initial; --theme-button-primary-color: initial; --theme-button-primary-hover-background-color: initial; --theme-button-primary-hover-color: initial; --theme-button-primary-selected-background-color: initial; --theme-button-primary-selected-color: initial; --theme-button-selected-background-color: initial; --theme-button-selected-color: initial; --theme-content-background-color: var(--white); --theme-content-border-color: var(--black-225); --theme-footer-background-border-top: 0; --theme-footer-background-color: hsl(210,8%,5%); --theme-footer-background-position: top left; --theme-footer-background-repeat: no-repeat; --theme-footer-background-size: auto; --theme-footer-divider-color: var(--black-500); --theme-footer-link-color-hover: var(--black-200); --theme-footer-link-color: var(--black-300); --theme-footer-padding-bottom: 0; --theme-footer-padding-top: 0; --theme-footer-text-color: var(--black-300); --theme-footer-title-color: var(--black-250); --theme-header-background-border-bottom: 0; --theme-header-background-color: var(--theme-primary); --theme-header-background-position: center left; --theme-header-background-repeat: repeat; --theme-header-background-size: auto; --theme-header-foreground-color: transparent; --theme-header-foreground-position: bottom right; --theme-header-foreground-repeat: no-repeat; --theme-header-foreground-size: auto; --theme-header-link-color: var(--theme-primary); --theme-header-sponsored-color: hsla(0,0%,100%,0.4); --theme-link-color-hover: initial; --theme-link-color-visited: initial; --theme-link-color: initial; --theme-post-body-font-family: var(--ff-sans); --theme-post-owner-background-color: var(--theme-secondary-100); --theme-post-owner-new-background-color: var(--theme-secondary-200); --theme-post-title-color-hover: var(--theme-link-color-hover); --theme-post-title-color-visited: var(--theme-link-color-visited); --theme-post-title-color: var(--theme-link-color); --theme-post-title-font-family: var(--ff-sans); --theme-primary-custom-100: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .9))); --theme-primary-custom-200: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .75))); --theme-primary-custom-300: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + ((100% - var(--theme-base-primary-color-l)) * .5))); --theme-primary-custom-400: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), var(--theme-base-primary-color-l)); --theme-primary-custom-500: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.3))); --theme-primary-custom-600: hsl(var(--theme-base-primary-color-h), var(--theme-base-primary-color-s), calc(var(--theme-base-primary-color-l) + (var(--theme-base-primary-color-l) * -.6))); --theme-primary-custom: var(--theme-primary-custom-400); --theme-tag-background-color: initial; --theme-tag-border-color: initial; --theme-tag-color: initial; --theme-tag-hover-background-color: initial; --theme-tag-hover-border-color: initial; --theme-tag-hover-color: initial; --theme-tag-required-background-color: var(--theme-secondary-500); --theme-tag-required-border-color: transparent; --theme-tag-required-color: var(--white); --theme-tag-required-hover-background-color: var(--theme-secondary-400); --theme-tag-required-hover-border-color: transparent; --theme-tag-required-hover-color: var(--white); --theme-topbar-bottom-border: 1px solid var(--black-225); background-color: var(--black-200); border-radius: var(--br-sm); border: 0px; box-sizing: inherit; color: var(--black-600); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: var(--su2) var(--su4); vertical-align: baseline; white-space-collapse: preserve;">git commit -m ".gitignore is now working"</code></li></ol>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-18716265065302360782023-12-12T10:02:00.000-08:002023-12-12T10:32:54.233-08:00GemBox add image excel c#<p> https://www.gemboxsoftware.com/spreadsheet/examples/excel-images/209</p><p><br /></p><pre class="line-numbers language-csharp" style="background-attachment: initial; background-clip: initial; background-image: none; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-radius: 0.1875rem; border: 0px; box-sizing: border-box; counter-reset: linenumber 0; direction: ltr; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 0.825rem; hyphens: none; line-height: 1.5; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto hidden; padding: 1.5rem 1.5rem 1.5rem 3.8em; position: relative; tab-size: 4; word-break: normal; word-spacing: normal;"><code class="language-csharp" data-source="" style="background-attachment: initial; background-clip: initial; background-image: none; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-radius: 0px; border: 0px; box-sizing: border-box; direction: ltr; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 0.825rem; hyphens: none; line-height: 1.5; margin: 0px; overflow-wrap: normal; overflow: auto hidden; padding: 0px; position: relative; tab-size: 4; white-space: inherit; word-break: normal; word-spacing: normal;"><span class="token keyword" style="box-sizing: border-box; color: blue;">using</span> GemBox<span class="token punctuation" style="box-sizing: border-box;">.</span>Spreadsheet<span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">class</span> <span class="token class-name" style="box-sizing: border-box; color: #2b91af;">Program</span>
<span class="token punctuation" style="box-sizing: border-box;">{</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">static</span> <span class="token keyword" style="box-sizing: border-box; color: blue;">void</span> <span class="token function" style="box-sizing: border-box;">Main</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token punctuation" style="box-sizing: border-box;">{</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// If using the Professional version, put your serial key below.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>SpreadsheetInfo<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">SetLicense</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"FREE-LIMITED-KEY"</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">var</span> workbook <span class="token operator" style="box-sizing: border-box;">=</span> <span class="token keyword" style="box-sizing: border-box; color: blue;">new</span> <span class="token class-name" style="box-sizing: border-box; color: #2b91af;">ExcelFile</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">var</span> worksheet <span class="token operator" style="box-sizing: border-box;">=</span> workbook<span class="token punctuation" style="box-sizing: border-box;">.</span>Worksheets<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"Images"</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Add small BMP image with specified rectangle position.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Pictures<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"<span class="token marker" style="box-sizing: border-box; font-weight: bolder;"><a class="code-resource" href="https://www.gemboxsoftware.com/spreadsheet/examples/209/resources/SmallImage.bmp" style="box-sizing: border-box; cursor: pointer; font-weight: bolder; transition: all 0.15s ease 0s;">SmallImage.bmp</a></span>"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">50</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">50</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">48</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">48</span><span class="token punctuation" style="box-sizing: border-box;">,</span> LengthUnit<span class="token punctuation" style="box-sizing: border-box;">.</span>Pixel<span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Add large JPG image with specified top-left cell.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Pictures<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"<span class="token marker" style="box-sizing: border-box; font-weight: bolder;"><a class="code-resource" href="https://www.gemboxsoftware.com/spreadsheet/examples/209/resources/FragonardReader.jpg" style="box-sizing: border-box; cursor: pointer; font-weight: bolder; transition: all 0.15s ease 0s;">FragonardReader.jpg</a></span>"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token string" style="box-sizing: border-box; color: #a31515;">"B9"</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Add PNG image with specified top-left and bottom-right cells.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Pictures<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"<span class="token marker" style="box-sizing: border-box; font-weight: bolder;"><a class="code-resource" href="https://www.gemboxsoftware.com/spreadsheet/examples/209/resources/Dices.png" style="box-sizing: border-box; cursor: pointer; font-weight: bolder; transition: all 0.15s ease 0s;">Dices.png</a></span>"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token string" style="box-sizing: border-box; color: #a31515;">"J16"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token string" style="box-sizing: border-box; color: #a31515;">"K20"</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Add GIF image using anchors.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">var</span> picture <span class="token operator" style="box-sizing: border-box;">=</span> worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Pictures<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"<span class="token marker" style="box-sizing: border-box; font-weight: bolder;"><a class="code-resource" href="https://www.gemboxsoftware.com/spreadsheet/examples/209/resources/Zahnrad.gif" style="box-sizing: border-box; cursor: pointer; font-weight: bolder; transition: all 0.15s ease 0s;">Zahnrad.gif</a></span>"</span><span class="token punctuation" style="box-sizing: border-box;">,</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">new</span> <span class="token class-name" style="box-sizing: border-box; color: #2b91af;">AnchorCell</span><span class="token punctuation" style="box-sizing: border-box;">(</span>worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box;">[</span><span class="token number" style="box-sizing: border-box;">9</span><span class="token punctuation" style="box-sizing: border-box;">]</span><span class="token punctuation" style="box-sizing: border-box;">,</span> worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box;">[</span><span class="token number" style="box-sizing: border-box;">21</span><span class="token punctuation" style="box-sizing: border-box;">]</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">100000</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">100000</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">,</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token keyword" style="box-sizing: border-box; color: blue;">new</span> <span class="token class-name" style="box-sizing: border-box; color: #2b91af;">AnchorCell</span><span class="token punctuation" style="box-sizing: border-box;">(</span>worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box;">[</span><span class="token number" style="box-sizing: border-box;">10</span><span class="token punctuation" style="box-sizing: border-box;">]</span><span class="token punctuation" style="box-sizing: border-box;">,</span> worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box;">[</span><span class="token number" style="box-sizing: border-box;">23</span><span class="token punctuation" style="box-sizing: border-box;">]</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">50000</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">50000</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Set picture's position mode.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>picture<span class="token punctuation" style="box-sizing: border-box;">.</span>Position<span class="token punctuation" style="box-sizing: border-box;">.</span>Mode <span class="token operator" style="box-sizing: border-box;">=</span> PositioningMode<span class="token punctuation" style="box-sizing: border-box;">.</span>Move<span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Add SVG image with specified top-left cell and size.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>picture <span class="token operator" style="box-sizing: border-box;">=</span> worksheet<span class="token punctuation" style="box-sizing: border-box;">.</span>Pictures<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Add</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"<span class="token marker" style="box-sizing: border-box; font-weight: bolder;"><a class="code-resource" href="https://www.gemboxsoftware.com/spreadsheet/examples/209/resources/Graphics1.svg" style="box-sizing: border-box; cursor: pointer; font-weight: bolder; transition: all 0.15s ease 0s;">Graphics1.svg</a></span>"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token string" style="box-sizing: border-box; color: #a31515;">"J9"</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">250</span><span class="token punctuation" style="box-sizing: border-box;">,</span> <span class="token number" style="box-sizing: border-box;">100</span><span class="token punctuation" style="box-sizing: border-box;">,</span> LengthUnit<span class="token punctuation" style="box-sizing: border-box;">.</span>Pixel<span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token comment" style="box-sizing: border-box; color: green;">// Set picture's metadata.</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>picture<span class="token punctuation" style="box-sizing: border-box;">.</span>Metadata<span class="token punctuation" style="box-sizing: border-box;">.</span>Name <span class="token operator" style="box-sizing: border-box;">=</span> <span class="token string" style="box-sizing: border-box; color: #a31515;">"SVG Image"</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span>workbook<span class="token punctuation" style="box-sizing: border-box;">.</span><span class="token function" style="box-sizing: border-box;">Save</span><span class="token punctuation" style="box-sizing: border-box;">(</span><span class="token string" style="box-sizing: border-box; color: #a31515;">"Images.<span class="token marker" data-marker="OutputFileType" style="box-sizing: border-box; font-weight: bolder;">xlsx</span>"</span><span class="token punctuation" style="box-sizing: border-box;">)</span><span class="token punctuation" style="box-sizing: border-box;">;</span><span class="token indent" style="box-sizing: border-box; letter-spacing: -0.15rem;">
</span><span class="token punctuation" style="box-sizing: border-box;">}</span>
<span class="token punctuation" style="box-sizing: border-box;">}</span></code></pre><div class="example" id="example_0" style="background-color: white; border-radius: 0.1875rem; border: 1px solid rgba(202, 192, 186, 0.5); box-sizing: border-box; color: rgba(34, 29, 35, 0.8); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; margin-bottom: 1.5rem; margin-top: 2rem;"><div class="example__controls" style="background-color: #e9e8e9; box-sizing: border-box; margin-top: 0.0625rem; padding: 1rem;"><ul class="example__switcher" id="tabs_0" style="box-sizing: border-box; float: left; list-style: none; margin: 0px 0px -1rem; padding: 0px;"><li class="is-active" data-tab="cs" style="box-sizing: border-box; float: left; font-size: 16px; font-weight: 700; line-height: 24px; margin-right: 0.5rem; margin-top: 0px; position: relative; text-align: center; width: 7em;"><a href="https://www.gemboxsoftware.com/spreadsheet/examples/excel-images/209#0_cs" style="background-color: white; border-bottom: none transparent; border-left-color: transparent; border-right-color: transparent; border-top-color: transparent; border-top-left-radius: 0.1875rem; border-top-right-radius: 0.1875rem; box-sizing: border-box; color: #221d23; cursor: default; display: block; padding: 0.75rem 1rem; text-decoration-line: none; transition: all 0.15s ease 0s;">C#</a></li><li data-tab="vb" style="box-sizing: border-box; float: left; font-size: 16px; font-weight: 700; line-height: 24px; margin-right: 0.5rem; margin-top: 0px; position: relative; text-align: center; width: 7em;"><a href="https://www.gemboxsoftware.com/spreadsheet/examples/excel-images/209#0_vb" style="background-color: #d3d2d3; border-bottom: none; border-top-left-radius: 0.1875rem; border-top-right-radius: 0.1875rem; box-sizing: border-box; color: #0072bb; display: block; padding: 0.75rem 1rem; text-decoration-line: none; transition: all 0.15s ease 0s;">VB.NET</a></li></ul><button class="button button--xsmall button--outline example__button--copy" id="copy_0" style="appearance: button; background-color: white; border-color: rgb(202, 192, 186); border-radius: 0.1875rem; border-style: solid; border-width: 1px; color: #0072bb; cursor: pointer; float: right; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 14px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: 700; line-height: 23px; margin: 0px; overflow: visible; padding: 0.1875rem 0.75rem; position: relative; transition: all 0.15s ease 0s;"><span class="label" style="box-sizing: border-box;">Copy</span></button><a class="button button--xsmall button--outline example__button--github" href="https://github.com/GemBoxLtd/GemBox.Spreadsheet.Examples/tree/master/C%23/Elements/Images" id="github_0" style="background-color: white; border-radius: 0.1875rem; border: 1px solid rgb(202, 192, 186); box-sizing: border-box; color: #0072bb; cursor: pointer; display: inline-block; float: right; font-size: 14px; font-weight: 700; line-height: 23px; margin-right: 0.1rem; padding: 0.1875rem 0.75rem; position: relative; text-align: center; text-decoration-line: none; transition: all 0.15s ease 0s;" target="_blank"><span class="label" style="box-sizing: border-box;">View on GitHub</span></a></div><div class="example__content" id="content_0" style="border-bottom-left-radius: 0.1875rem; border-bottom-right-radius: 0.1875rem; box-sizing: border-box; padding: 0px;"><div class="is-active" data-github-url="https://github.com/GemBoxLtd/GemBox.Spreadsheet.Examples/tree/master/C%23/Elements/Images" data-tab="cs" style="box-sizing: border-box;"><pre class="line-numbers language-csharp" style="background: none; border-radius: 0.1875rem; border: 0px; box-sizing: border-box; color: black; counter-reset: linenumber 0; direction: ltr; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 0.825rem; hyphens: none; line-height: 1.5; margin-bottom: 0px; margin-top: 0px; overflow-wrap: normal; overflow: auto hidden; padding: 1.5rem 1.5rem 1.5rem 3.8em; position: relative; tab-size: 4; word-break: normal; word-spacing: normal;"><code class="language-csharp" data-source="" style="background: none; border-radius: 0px; border: 0px; box-sizing: border-box; direction: ltr; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 0.825rem; hyphens: none; line-height: 1.5; margin: 0px; overflow-wrap: normal; overflow: auto hidden; padding: 0px; position: relative; tab-size: 4; white-space: inherit; word-break: normal; word-spacing: normal;"><br /><span aria-hidden="true" class="line-numbers-rows" style="border: 0px; box-sizing: border-box; font-size: 13.2px; left: -3.8em; letter-spacing: -1px; margin-top: -0.14rem; pointer-events: none; position: absolute; top: 0px; user-select: none; width: 3em;"><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; pointer-events: none;"></span></span></code></pre></div></div></div><figure class="screenshot screenshot-l" style="background-color: white; box-sizing: border-box; color: rgba(34, 29, 35, 0.8); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; height: auto; margin: 0px auto 1.5rem; max-width: 100%; text-align: center; width: 680.406px;"><img alt="Adding images of various formats and positions to an Excel worksheet from C# and VB.NET" class="screenshot__image open-modal" src="https://www.gemboxsoftware.com/spreadsheet/examples/209/content/excel-images.png" style="border-style: none; box-sizing: border-box; cursor: pointer; display: block; height: auto; margin: 0.7rem auto; max-height: 20rem; max-width: 100%;" title="Screenshot of Excel sheet with images" /><figcaption class="screenshot__caption" style="box-sizing: border-box; color: rgba(34, 29, 35, 0.7); font-size: 1rem; font-style: italic; margin: 0.7rem auto;">Screenshot of Excel sheet with images</figcaption></figure><p style="background-color: white; box-sizing: border-box; color: rgba(34, 29, 35, 0.8); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; margin-bottom: 1.5rem; margin-top: 0px;">GemBox.Spreadsheet supports all popular image formats like PNG, JPEG, EXIF, GIF, TIFF, ISO, SVG, EMF, and WMF. However, note that only PNG, JPEG, and EMF images are supported in XLS files (old binary format).</p><p style="background-color: white; box-sizing: border-box; color: rgba(34, 29, 35, 0.8); font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif; font-size: 18px; margin-bottom: 1.5rem; margin-top: 0px;">In PDF files, the SVG images are rendered as vector graphics, resulting in smaller file sizes and better quality than bitmap images (PNG, JPEG, BMP, etc.).</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-456039451805863362023-12-09T11:10:00.000-08:002023-12-09T11:10:45.261-08:00Recover unsaved Notepad++ from autosave<p>https://www.cisdem.com/resource/recover-notepad-files.html#:~:text=Steps%20to%20recover%20unsaved%20Notepad,AppData%5CRoaming%20by%20File%20Explorer. </p><h3 style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 24px; line-height: 1.5; margin: 0px 0px 0.5em; padding: 0px;">Recover unsaved Notepad++ from autosave</h3><p style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 16px; margin: 0px 0px 15px; padding: 0px;">Differing from Notepad, Notepad++ has the autosave option by default. Via menu > Settings > Preferences > Backup > Enable session snapshot and periodic backup, Notepad++ users are allowed to recover unsaved notes easily, even after restarting the app. As a bonus tip, here we’ll demonstrate how to restore unsaved files from Notepad++ using auto backup feature.</p><h4 style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 18px; line-height: 1.5; margin: 0px 0px 0.5em; padding: 0px;">Where does Notepad++ store unsaved files?</h4><p style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 16px; margin: 0px 0px 15px; padding: 0px;">Unsaved files in Notepad++ will be automatically backed up and saved to its temporary folder on the local disk of Windows 11/10. The Notepad++ temp files location is <strong style="box-sizing: border-box; margin: 0px; padding: 0px;">C:\Users\USERNAME\AppData\Roaming\Notepad++\backup</strong>.<img alt="recover unsaved notepad++ 01" class="lazyload" data-src="https://www.cisdem.com/media/upload/2023/10/24/recover-unsaved-notepad-01.png" src="https://www.cisdem.com/media/upload/2023/10/24/recover-unsaved-notepad-01.png" style="border: 0px; box-sizing: border-box; display: inline; height: 442px; margin: 0px; max-width: 100%; padding: 0px; width: 800px;" /></p><h4 style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 18px; line-height: 1.5; margin: 0px 0px 0.5em; padding: 0px;">How to recover unsaved Notepad++ files?</h4><ol class="decimal chww_li" start="1" style="background-color: white; box-sizing: border-box; font-family: Montserrat, "Helvetica Neue", sans-serif; font-size: 16px; margin: 0px; padding: 0px 20px;"><li style="box-sizing: border-box; list-style-image: initial; list-style-position: outside !important; list-style-type: decimal; margin: 0px 0px 15px; padding: 0px;">Go to the location of your unsaved Notepad++ files on your Windows PC.</li><li style="box-sizing: border-box; list-style-image: initial; list-style-position: outside !important; list-style-type: decimal; margin: 0px 0px 15px; padding: 0px;">Once you’re in the backup folder, locate the Notepad++ unsaved files you need and open them one by one for recovery.<img alt="recover unsaved notepad++ 02" class="lazyload" data-src="https://www.cisdem.com/media/upload/2023/10/24/recover-unsaved-notepad-02.png" src="https://www.cisdem.com/media/upload/2023/10/24/recover-unsaved-notepad-02.png" style="border: 0px; box-sizing: border-box; display: block; height: 430px; margin: 15px 0px; max-width: 100%; padding: 0px; width: 798px;" /></li><div><br /></div></ol>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-84707838313888655072023-12-04T15:04:00.000-08:002023-12-04T15:04:42.518-08:00comprimir json<p> https://www.zickty.com/gziptotext</p><p>Controller.cs</p><p> Public Function GetValue() As HttpResponseMessage</p><p> Dim objResponse As Object = ""</p><p> </p><p> Dim numeroElementos As Int32 = 0</p><p> Dim fecha As Date = Date.Now</p><p> Dim departamentoId As String = ""</p><p> </p><p> Dim paramOption As String = Convert.ToString(Request.Headers.GetValues("paramOption").FirstOrDefault())</p><p> If Request.Headers.Contains("fecha") Then</p><p> fecha = Convert.ToString(Request.Headers.GetValues("fecha").FirstOrDefault())</p><p> End If</p><p> </p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>Select Case paramOption</span></p><p><br /></p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>Case "ObtenerInfoDisponibles"</span></p><p> <span style="background-color: #fcff01;"> Dim jResults As String = ObtenerInfoDisponiblesSerializar(fecha)</span></p><p><span style="background-color: #fcff01;"> objResponse = CompressJsonData(jResults)</span></p><p> End Select</p><p> End Function</p><p><br /></p><p><span style="white-space: normal; white-space: pre;"> </span></p><p><span style="white-space: normal; white-space: pre;"> </span></p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>Private Function ObtenerInfoDisponiblesSerializar(fecha As String) As String</span></p><p> Dim sqlQuery As New System.Text.StringBuilder</p><p> sqlQuery.Append("ObtenerInfoDisponibles " + fecha & vbCrLf)</p><p> Dim dt As DataTable = MSSQL1.QueryDataTable(conexion, sqlQuery.ToString())</p><p> If dt.Rows.Count > 0 Then</p><p> Return JsonConvert.SerializeObject(dt)</p><p> End If</p><p> Return Nothing</p><p> End Function</p><p><br /></p><p> Public Function CompressGZip(input As String, Optional encoding As Encoding = Nothing) As Byte()</p><p> encoding = If(encoding, Encoding.Unicode)</p><p> Dim bytes As Byte() = encoding.GetBytes(input)</p><p> Using stream As New MemoryStream()</p><p> Using zipStream As New GZipStream(stream, CompressionMode.Compress)</p><p> zipStream.Write(bytes, 0, bytes.Length)</p><p> Return stream.ToArray()</p><p> End Using</p><p> End Using</p><p> End Function</p><p><br /></p><p> <span style="background-color: #fcff01;">Function CompressJsonData(jsonData As String) As Byte()</span></p><p><span style="background-color: #fcff01;"> Dim byteArray As Byte() = Encoding.UTF8.GetBytes(jsonData)</span></p><p><span style="background-color: #fcff01;"><br /></span></p><p><span style="background-color: #fcff01;"> Using memoryStream As New MemoryStream()</span></p><p><span style="background-color: #fcff01;"> Using gzipStream As New GZipStream(memoryStream, CompressionLevel.Optimal)</span></p><p><span style="background-color: #fcff01;"> gzipStream.Write(byteArray, 0, byteArray.Length)</span></p><p><span style="background-color: #fcff01;"> End Using</span></p><p><span style="background-color: #fcff01;"> Return memoryStream.ToArray()</span></p><p><span style="background-color: #fcff01;"> End Using</span></p><p><span style="background-color: #fcff01;"> End Function</span></p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-78663149531837153102023-10-04T09:27:00.001-07:002023-10-04T09:27:09.441-07:00ObtenerListaCorreos<p> ALTER PROCEDURE [dbo].[ObtenerListaCorreos] @OpcionId AS varchar(50) </p><p>AS </p><p> BEGIN </p><p> DECLARE @strCorreos AS VARCHAR(MAX); </p><p> DECLARE @dtCorreos TABLE(correo VARCHAR(100)); </p><p> DECLARE @intIndiceInicio AS INT; </p><p> DECLARE @intIndiceFin AS INT; </p><p> DECLARE @strCorreo AS VARCHAR(100); </p><p> DECLARE @ultimo AS INT; </p><p> SET @intIndiceInicio = 1; </p><p> SET @intIndiceFin = 0; </p><p> SET @ultimo = 0; </p><p> SELECT @strCorreos = [correo] from (</p><p> SELECT correo</p><p> FROM CORREOS </p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>WHERE OPCIONID = @OpcionId</span></p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>) as x</span></p><p><span style="white-space: normal;"><span style="white-space: pre;"> </span>;</span></p><p> WHILE @intIndiceFin <> LEN(@strCorreos) </p><p> BEGIN </p><p> SET @intIndiceFin = CHARINDEX(',', @strCorreos, @intIndiceInicio); </p><p> IF @intIndiceFin = 0 </p><p> BEGIN </p><p> SET @IntIndiceFin = LEN(@strCorreos); </p><p> SET @ultimo = 1 </p><p> END; </p><p> IF @ultimo = 0 </p><p> SET @strCorreo = SUBSTRING(@strCorreos, @intIndiceInicio, (@intIndiceFin - @intIndiceInicio)); </p><p> ELSE </p><p> SET @strCorreo = SUBSTRING(@strCorreos, @intIndiceInicio, ((@intIndiceFin - @intIndiceInicio) + 1)); </p><p> INSERT INTO @dtCorreos </p><p> VALUES(@strCorreo); </p><p> SET @intIndiceInicio = (@intIndiceFin + 1); </p><p> END; </p><p> SELECT * </p><p> FROM @dtcorreos </p><p> ORDER BY correo; </p><p> END;</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-10032025113831471912023-09-28T09:20:00.002-07:002023-09-28T09:20:52.164-07:00sp_lock<p><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space-collapse: preserve;">In SQL Server, the </span><code style="--tw-border-spacing-x: 0; --tw-border-spacing-y: 0; --tw-ring-color: rgba(69,89,164,.5); --tw-ring-offset-color: #fff; --tw-ring-offset-shadow: 0 0 transparent; --tw-ring-offset-width: 0px; --tw-ring-shadow: 0 0 transparent; --tw-rotate: 0; --tw-scale-x: 1; --tw-scale-y: 1; --tw-scroll-snap-strictness: proximity; --tw-shadow-colored: 0 0 transparent; --tw-shadow: 0 0 transparent; --tw-skew-x: 0; --tw-skew-y: 0; --tw-translate-x: 0; --tw-translate-y: 0; background-color: #f7f7f8; border: 0px solid rgb(217, 217, 227); box-sizing: border-box; color: var(--tw-prose-code); font-family: "Söhne Mono", Monaco, "Andale Mono", "Ubuntu Mono", monospace !important; font-size: 0.875em; font-weight: 600; white-space-collapse: preserve;">sp_lock</code><span style="background-color: #f7f7f8; color: #374151; font-family: Söhne, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; white-space-collapse: preserve;"> stored procedure was used in older versions to display information about locks that were currently being held by processes. </span> </p><p><br /></p><p>SELECT * </p><p>FROM sys.dm_exec_requests;</p><p><br /></p><p>SELECT *</p><p>FROM sys.dm_os_waiting_tasks;</p><p><br /></p><p>EXEC sp_who2;</p><p><br /></p><p><br /></p><p>DECLARE @sqltext VARBINARY(128)</p><p>SELECT @sqltext = sql_handle</p><p>FROM sys.sysprocesses</p><p>WHERE spid = 322 </p><p>SELECT TEXT</p><p>FROM sys.dm_exec_sql_text(@sqltext)</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-63906535599304647502023-09-07T11:11:00.001-07:002023-09-07T11:11:14.919-07:00Filtering In Datagridview In Vb.Net And Also In C#<p><span style="background-color: white;"><span style="color: #212121; font-family: open sans, sans-serif;">https://www.c-sharpcorner.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/</span></span></p><p><span style="background-color: white; color: #212121; font-family: "open sans", sans-serif; font-size: 16px;">In this article we will learn about how to filter data in datagridview. We can better understand this with an example.</span></p><div class="user-content line-numbers" style="background-color: white; box-sizing: border-box; color: #212121; font-family: "open sans", sans-serif; font-size: 14px; margin: 5px 0px 0px; padding: 5px 0px 0px;"><div class="PaddingLeft5" id="div2" style="box-sizing: border-box; font-size: 16px !important; margin: 0px; padding: 0px;"><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Step 1</strong></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;">Create Windows Form with Textbox and DataGridView.</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px; text-align: center;"><img alt="Form" class="" data-src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form.png" src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form.png" style="box-sizing: border-box; height: 660px; margin: 0px; max-width: 100%; padding: 0px; width: 850px;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Step 2</strong></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;">In coding view, code as per the following code. Here, I give both code c# and vb.Net. You can choose as per your requirement(s).</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Code as per Vb.Net</strong></p><div class="code-toolbar" style="box-sizing: border-box; margin: 0px; padding: 0px; position: relative;"><pre class="language-aspnet line-numbers" style="background: none rgb(253, 253, 253); box-sizing: border-box; counter-reset: linenumber 0; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 1em; hyphens: none; line-height: 1.5; margin-bottom: 1em; margin-top: 0.5em; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; word-break: normal; word-spacing: normal;" tabindex="0"><code class="language-aspnet" style="background-attachment: local; background-clip: content-box; background-image: linear-gradient(transparent 50%, rgba(69, 142, 209, 0.04) 50%); background-origin: content-box; background-position: 0% 0%; background-repeat: initial; background-size: 3em 3em; border-left: 10px solid rgb(53, 140, 203); box-shadow: rgb(53, 140, 203) -1px 0px 0px 0px, rgb(223, 223, 223) 0px 0px 0px 1px; box-sizing: border-box; display: block; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 1em; height: inherit; hyphens: none; line-height: 1.5; margin: 0px; max-height: inherit; overflow-wrap: normal; overflow: auto; padding: 0px 1em 0px 45px; position: relative; tab-size: 4; white-space: inherit; word-break: normal; word-spacing: normal;">Imports System.Data.SqlClient
Public Class Form14
Dim libconn As SqlConnection
Dim daMain As SqlDataAdapter
Dim dtMain As New DataSet
Dim strQuery As String = ""
Dim strConnectionString As String
Dim otable As DataTable = New DataTable()
Private Sub Form14_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
load_data()
DataGridView1.AllowUserToAddRows = False
DataGridView1.AllowUserToDeleteRows = False
End Sub
Private Sub load_data()
Connetion()
daMain = New SqlDataAdapter("Select * From Employee", libconn)
dtMain.Clear()
daMain.Fill(dtMain)
DataGridView1.DataSource = dtMain.Tables(0)
libconn.Close()
DataGridView1.ClearSelection()
TextBox1.Text = ""
otable = GetOriginalDataTable()
End Sub
Public Function Connetion()
strConnectionString = "Data Source=UDAY-LAPTOP;Initial Catalog=sqldemo;Integrated Security=true"
libconn = New SqlConnection
libconn.ConnectionString = strConnectionString
If libconn.State <> ConnectionState.Open Then
Try
libconn.Open()
Catch conn_error As SqlException
MsgBox(conn_error.Message)
Connetion = False
End Try
End If
Connetion = True
End Function
Private Function GetOriginalDataTable() As DataTable
Dim dtable As DataTable = New DataTable()
For Each col As DataGridViewColumn In DataGridView1.Columns
dtable.Columns.Add(col.Name)
Next
For Each row As DataGridViewRow In DataGridView1.Rows
Dim dRow As DataRow = dtable.NewRow()
Dim flag As Integer = -1
For Each cell As DataGridViewCell In row.Cells
dRow(cell.ColumnIndex) = cell.Value
Next
dtable.Rows.Add(dRow)
Next
Return dtable
End Function
Private Function SearchGrid()
Dim dtable As DataTable = New DataTable()
If TextBox1.Text.Length > 0 And DataGridView1.RowCount = 0 Then
DataGridView1.DataSource = otable
End If
If TextBox1.Text.Length = 0 Then
DataGridView1.DataSource = Nothing
DataGridView1.DataSource = otable
Else
For Each col As DataGridViewColumn In DataGridView1.Columns
dtable.Columns.Add(col.Name)
Next
For Each row As DataGridViewRow In DataGridView1.Rows
Dim dRow As DataRow = dtable.NewRow()
Dim flag As Integer = -1
For Each cell As DataGridViewCell In row.Cells
dRow(cell.ColumnIndex) = cell.Value
Dim str As String = cell.Value.ToString().ToLower()
Dim str1 As String = TextBox1.Text.ToLower()
If str.Contains(str1.ToString()) = True Then
flag = 1
End If
Next
If flag = 1 Then
dtable.Rows.Add(dRow)
End If
Next
DataGridView1.DataSource = Nothing
DataGridView1.DataSource = dtable
End If
SearchGrid = True
End Function
Private Function HighlightGrid()
If TextBox1.Text.Length = 0 Then
For n As Integer = 0 To (DataGridView1.Rows.Count) - 1
For m As Integer = 0 To (DataGridView1.Rows(n).Cells.Count) - 1
DataGridView1.Rows(n).Cells(m).Style.BackColor = SystemColors.Control
Next
Next
Else
For n As Integer = 0 To (DataGridView1.Rows.Count) - 1
For m As Integer = 0 To (DataGridView1.Rows(n).Cells.Count) - 1
Dim str As String = DataGridView1.Rows(n).Cells(m).Value.ToString().ToLower()
Dim str1 As String = TextBox1.Text.ToLower()
If str.Contains(str1.ToString()) = True Then
DataGridView1.Rows(n).Cells(m).Style.BackColor = Color.Yellow
Else
DataGridView1.Rows(n).Cells(m).Style.BackColor = SystemColors.Control
End If
Next
Next
End If
HighlightGrid = True
End Function
Private Sub TextBox1_KeyUp(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
If e.KeyCode = Keys.Back Then
DataGridView1.DataSource = otable
SearchGrid()
HighlightGrid()
DataGridView1.ClearSelection()
End If
End Sub
Private Sub TextBox1_TextChanged(sender As System.Object, e As System.EventArgs) Handles TextBox1.TextChanged
SearchGrid()
HighlightGrid()
DataGridView1.ClearSelection()
End Sub
End Class<span aria-hidden="true" class="line-numbers-rows" style="border-right: 1px solid rgb(153, 153, 153); box-sizing: border-box; color: transparent; left: 0px; letter-spacing: -1px; margin: 0px; padding: 0px; pointer-events: none; position: absolute; top: 0px; user-select: none; width: 30px;"><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span></span></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; opacity: 0; padding: 0px; position: absolute; right: 0.2em; top: 0.3em; transition: opacity 0.3s ease-in-out 0s;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px; padding: 0px;"><span style="background: rgba(224, 224, 224, 0.2); border-radius: 0.5em; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 0px 0px; box-sizing: border-box; color: #bbbbbb; font-size: 0.8em; margin: 0px 0px 0px 10px; padding: 0px 0.5em;">ASP.NET (C#)</span></div><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px; padding: 0px;"><button class="copy-to-clipboard-button" data-copy-state="copy" style="background-attachment: initial; background-clip: initial; background-image: none; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-color: initial; border-style: initial; border-width: 0px; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; outline: 0px; overflow: visible; padding: 0px; user-select: none;" type="button"><span style="background: rgba(224, 224, 224, 0.2); border-radius: 0.5em; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 0px 0px; box-sizing: border-box; color: #bbbbbb; font-size: 0.8em; margin: 0px 0px 0px 10px; padding: 0px 0.5em;">Copy</span></button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Code as per C#</strong></p><div class="code-toolbar" style="box-sizing: border-box; margin: 0px; padding: 0px; position: relative;"><pre class="language-csharp line-numbers" style="background: none rgb(253, 253, 253); box-sizing: border-box; counter-reset: linenumber 0; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 1em; hyphens: none; line-height: 1.5; margin-bottom: 1em; margin-top: 0.5em; overflow-wrap: normal; overflow: visible; padding: 0px; position: relative; tab-size: 4; word-break: normal; word-spacing: normal;" tabindex="0"><code class="language-csharp" style="background-attachment: local; background-clip: content-box; background-image: linear-gradient(transparent 50%, rgba(69, 142, 209, 0.04) 50%); background-origin: content-box; background-position: 0% 0%; background-repeat: initial; background-size: 3em 3em; border-left: 10px solid rgb(53, 140, 203); box-shadow: rgb(53, 140, 203) -1px 0px 0px 0px, rgb(223, 223, 223) 0px 0px 0px 1px; box-sizing: border-box; display: block; font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace; font-size: 1em; height: inherit; hyphens: none; line-height: 1.5; margin: 0px; max-height: inherit; overflow-wrap: normal; overflow: auto; padding: 0px 1em 0px 45px; position: relative; tab-size: 4; white-space: inherit; word-break: normal; word-spacing: normal;"><span class="token keyword keyword-using" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">using</span> <span class="token namespace" style="box-sizing: border-box; margin: 0px; opacity: 0.7; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Data<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>SqlClient</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-public" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">public</span> <span class="token keyword keyword-class" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">class</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">Form14</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">SqlConnection</span> libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">SqlDataAdapter</span> daMain<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataSet</span> dtMain <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataSet</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> strQuery <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token string" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">""</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> strConnectionString<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span> otable <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Form14_Load</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Object</span> sender<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">,</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>EventArgs</span> e<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">load_data</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>AllowUserToAddRows <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">false</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>AllowUserToDeleteRows <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">false</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">load_data</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Connetion</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
daMain <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">SqlDataAdapter</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token string" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">"Select * From Employee"</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">,</span> libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
dtMain<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Clear</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
daMain<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Fill</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>dtMain<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> dtMain<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Tables</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Close</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ClearSelection</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token string" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">""</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
otable <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">GetOriginalDataTable</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-public" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">public</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Connetion</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
strConnectionString <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token string" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">"Data Source=UDAY-LAPTOP;Initial Catalog=sqldemo;Integrated Security=true"</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
libconn <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">SqlConnection</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>ConnectionString <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> strConnectionString<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>State <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">!=</span> ConnectionState<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Open<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-try" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">try</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
libconn<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Open</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-catch" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">catch</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">SqlException</span> conn_error<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
Interaction<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">MsgBox</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>conn_error<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Message<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
Connetion <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">false</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
Connetion <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">true</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">GetOriginalDataTable</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span> dtable <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewColumn</span> col <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Add</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>col<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Name<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewRow</span> row <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataRow</span> dRow <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">NewRow</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> flag <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span><span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewCell</span> cell <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> row<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Cells<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">dRow</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>cell<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>ColumnIndex<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> cell<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Value<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Add</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>dRow<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-return" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">return</span> dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">SearchGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span> dtable <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-new" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">new</span> <span class="token constructor-invocation class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataTable</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Length <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">></span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">&</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>RowCount <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> otable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Length <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-null" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">null</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> otable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-else" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">else</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewColumn</span> col <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Columns<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Add</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>col<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Name<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewRow</span> row <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataRow</span> dRow <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">NewRow</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> flag <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span><span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-foreach" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">foreach</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">DataGridViewCell</span> cell <span class="token keyword keyword-in" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">in</span> row<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Cells<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">dRow</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>cell<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>ColumnIndex<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> cell<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Value<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> str <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> cell<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Value<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToString</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToLower</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> str1 <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToLower</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>str<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Contains</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>str1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToString</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">true</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
flag <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>flag <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Add</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>dRow<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token keyword keyword-null" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">null</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> dtable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
SearchGrid <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">true</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">HighlightGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Length <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-for" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">for</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> n <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> n <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;"><=</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Count<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> n<span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">++</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-for" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">for</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> m <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> m <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;"><=</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Cells<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Count<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> m<span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">++</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Cells</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>m<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Style<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>BackColor <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> SystemColors<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Control<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-else" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">else</span>
<span class="token keyword keyword-for" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">for</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> n <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> n <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;"><=</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Rows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Count<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> n<span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">++</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-for" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">for</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">int</span> m <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">0</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> m <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;"><=</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Cells<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Count<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">-</span> <span class="token number" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">1</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span> m<span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">++</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> str <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Cells</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>m<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Value<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToString</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToLower</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">string</span> str1 <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> TextBox1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Text<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToLower</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>str<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Contains</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>str1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ToString</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span> <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">true</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Cells</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>m<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Style<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>BackColor <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> Color<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Yellow<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token keyword keyword-else" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">else</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Rows</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>n<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">Cells</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>m<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Style<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>BackColor <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> SystemColors<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Control<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
HighlightGrid <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> <span class="token boolean" style="box-sizing: border-box; color: #c92c2c; margin: 0px; padding: 0px;">true</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">TextBox1_KeyUp</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">object</span> sender<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">,</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Windows<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Forms<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>KeyEventArgs</span> e<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token keyword keyword-if" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">if</span> <span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span>e<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>KeyCode <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">==</span> Keys<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Back<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>DataSource <span class="token operator" style="background: rgba(255, 255, 255, 0.5); box-sizing: border-box; color: #a67f59; margin: 0px; padding: 0px;">=</span> otable<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">SearchGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">HighlightGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ClearSelection</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token keyword keyword-private" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">private</span> <span class="token return-type class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">void</span> <span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">TextBox1_TextChanged</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>Object</span> sender<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">,</span> <span class="token class-name" style="box-sizing: border-box; color: #1990b8; margin: 0px; padding: 0px;">System<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span>EventArgs</span> e<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">{</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">SearchGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">HighlightGrid</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
DataGridView1<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">.</span><span class="token function" style="box-sizing: border-box; color: #2f9c0a; margin: 0px; padding: 0px;">ClearSelection</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">(</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">)</span><span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">;</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span>
<span class="token punctuation" style="box-sizing: border-box; color: #5f6364; margin: 0px; padding: 0px;">}</span><span aria-hidden="true" class="line-numbers-rows" style="border-right: 1px solid rgb(153, 153, 153); box-sizing: border-box; color: transparent; left: 0px; letter-spacing: -1px; margin: 0px; padding: 0px; pointer-events: none; position: absolute; top: 0px; user-select: none; width: 30px;"><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span><span style="box-sizing: border-box; counter-increment: linenumber 1; display: block; margin: 0px; padding: 0px;"></span></span></code></pre><div class="toolbar" style="box-sizing: border-box; margin: 0px; opacity: 0; padding: 0px; position: absolute; right: 0.2em; top: 0.3em; transition: opacity 0.3s ease-in-out 0s;"><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px; padding: 0px;"><span style="background: rgba(224, 224, 224, 0.2); border-radius: 0.5em; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 0px 0px; box-sizing: border-box; color: #bbbbbb; font-size: 0.8em; margin: 0px 0px 0px 10px; padding: 0px 0.5em;">C#</span></div><div class="toolbar-item" style="box-sizing: border-box; display: inline-block; margin: 0px; padding: 0px;"><button class="copy-to-clipboard-button" data-copy-state="copy" style="background-attachment: initial; background-clip: initial; background-image: none; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-color: initial; border-style: initial; border-width: 0px; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; margin: 0px; outline: 0px; overflow: visible; padding: 0px; user-select: none;" type="button"><span style="background: rgba(224, 224, 224, 0.2); border-radius: 0.5em; box-shadow: rgba(0, 0, 0, 0.2) 0px 2px 0px 0px; box-sizing: border-box; color: #bbbbbb; font-size: 0.8em; margin: 0px 0px 0px 10px; padding: 0px 0.5em;">Copy</span></button></div></div></div><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Output 1</strong></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;">When you run the application, by default all data will be loaded in datagridview as per the following:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px; text-align: center;"><img alt="Form" class="" data-src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form1.png" src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form1.png" style="box-sizing: border-box; margin: 0px; max-width: 100%; padding: 0px;" /></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;"><strong style="box-sizing: border-box; margin: 0px; padding: 0px;">Final Output</strong></p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;">In Textbox, when I type IT, the following records will be filtered:</p><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px; text-align: center;"><img alt="Output" class="" data-src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form2.png" src="https://f4n3x6c5.stackpathcdn.com/article/filtering-in-datagridview-in-vb-net-and-also-in-c-sharp/Images/Form2.png" style="box-sizing: border-box; margin: 0px; max-width: 100%; padding: 0px;" /></p><h2 style="box-sizing: border-box; color: inherit; font-family: Roboto, sans-serif; font-size: 24px; font-weight: 400; line-height: 1.1; margin: 0px; padding: 0px;">Summary</h2><p style="box-sizing: border-box; line-height: 1.5; margin: 1em 0px; padding: 0px;">In this article, we have learned about how to filter data in datagridview and also highlight cells.</p></div></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-45631543302474721032023-09-07T09:39:00.001-07:002023-09-07T09:39:11.449-07:00Buscar en un DataGridView sin conexión a base de datos en Vb.Net<p> https://aprendamosdeprogramacion.wordpress.com/2016/10/07/buscar-en-un-datadridview-sin-conexion-a-base-de-datos-en-vb-net/</p><p><br /></p><header class="post-header" style="-webkit-font-smoothing: antialiased; background-color: #f1f1f1; box-sizing: border-box; color: #111111; font-family: Lato, sans-serif; font-size: 17px; margin-bottom: 30px;"><h1 class="post-title" style="-webkit-font-smoothing: antialiased; border-bottom-color: rgba(0, 0, 0, 0.2); border-bottom-style: solid; border-image: initial; border-left-color: initial; border-left-style: initial; border-right-color: initial; border-right-style: initial; border-top-color: initial; border-top-style: initial; border-width: 0px 0px 1px; box-sizing: border-box; font-family: Merriweather, Georgia, serif; font-size: 2.5em; letter-spacing: -1px; line-height: 1.25em; margin: 0px 0px 10px; padding: 0px 0px 16px; word-break: break-word;">Buscar en un DataGridView sin conexión a base de datos en Vb.Net</h1></header><figure class="post-image clear-fix" style="-webkit-font-smoothing: antialiased; background-color: #f1f1f1; box-sizing: border-box; clear: both; color: #111111; font-family: Lato, sans-serif; font-size: 17px; margin: 0px 0px 40px; position: relative;"><img alt="" class="attachment-rowling-post-image size-rowling-post-image wp-post-image" data-attachment-id="777" data-comments-opened="1" data-image-caption="" data-image-description="" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="sshot-2" data-large-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=411" data-medium-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=300" data-orig-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png" data-orig-size="411,315" data-permalink="https://aprendamosdeprogramacion.wordpress.com/2016/10/07/buscar-en-un-datadridview-sin-conexion-a-base-de-datos-en-vb-net/sshot-2-7/" decoding="async" height="315" sizes="(max-width: 411px) 100vw, 411px" src="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=411" srcset="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png 411w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=150 150w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=300 300w" style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; display: block; font-family: inherit; height: auto; line-height: 1; margin: 0px auto; max-width: 100%; padding: 0px;" width="411" /></figure><br /><div class="post-inner" style="-webkit-font-smoothing: antialiased; background-color: #f1f1f1; box-sizing: border-box; color: #111111; float: right; font-family: Lato, sans-serif; font-size: 17px; position: relative; width: 612px; z-index: 5;"><div class="post-content" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; font-size: 1em;"><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Hoy quiero compartir con ustedes un pequeño tutorial para realizar una búsqueda sencilla en un objeto de tipo DataGridView que no estará enlazado a una base de datos, para comenzar he creado un proyecto y le he agregado tres(3) controles con los que trabajaremos los cuales son:</p><ul style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.5em 1.5em; padding: 0px;"><li style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0.5em 0px; padding: 0px; text-align: justify;"><strong style="-webkit-font-smoothing: antialiased; box-sizing: border-box;">TextBox</strong>: El cual recibirá el criterio para realizar la búsqueda, le he asignado un Name «TxtBuscar»</li><li style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 0.5em; padding: 0px; text-align: justify;"><strong style="-webkit-font-smoothing: antialiased; box-sizing: border-box;">Button</strong>: El cual sera el encargado de ejecutar nuestro procedimiento, le he asignado un Name «BtnBuscar».</li><li style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px; padding: 0px; text-align: justify;"><strong style="-webkit-font-smoothing: antialiased; box-sizing: border-box;">DataGridView</strong>: Es el objeto que contiene los datos donde realizaremos la búsqueda, le he asignado un Name «DGTabla»</li></ul><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Para comenzar en el «DGTabla» le he agregado tres (3) columnas con los siguientes nombres «Id», «Nombre» y «Apellido»; ademas ya le agregue también cinco (5) registros. Una vez terminada esta parte nos debe quedar el formulario así.</p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;"><img alt="sshot-1" class=" size-full wp-image-746 aligncenter" data-attachment-id="746" data-comments-opened="1" data-image-caption="" data-image-description="" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="sshot-1" data-large-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png?w=411" data-medium-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png?w=300" data-orig-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png" data-orig-size="411,315" data-permalink="https://aprendamosdeprogramacion.wordpress.com/2016/10/07/buscar-en-un-datadridview-sin-conexion-a-base-de-datos-en-vb-net/sshot-1-7/" loading="lazy" sizes="(max-width: 411px) 100vw, 411px" src="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png?w=616" srcset="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png 411w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png?w=150&h=115 150w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-17.png?w=300&h=230 300w" style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; clear: both; display: block; font-family: inherit; height: auto; line-height: 1; margin: 0px auto; max-width: 100%; padding: 0px; text-align: left;" /></p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Ahora con nuestro formulario creado, haremos uso del ciclo «For Each» para realizar la búsqueda dentro del control «DGTabla», para movernos dentro de este objeto debemos recurrir a dos (2) propiedades del «DataGridView» como son:</p><ul style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; list-style-image: initial; list-style-position: initial; margin: 0px 0px 1.5em 1.5em; padding: 0px;"><li style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0.5em 0px; padding: 0px; text-align: justify;"><strong style="-webkit-font-smoothing: antialiased; box-sizing: border-box;">DataGridViewRow</strong>: La cual nos permitirá recorrer las filas del objeto.</li><li style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px; padding: 0px; text-align: justify;"><strong style="-webkit-font-smoothing: antialiased; box-sizing: border-box;">DataGridViewCell:</strong> La cual nos permitirá recorrer las celdas del objeto.</li></ul><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Y por ultimo también necesitaremos emplear el condicional «If» para validar la coincidencia entre el criterio de búsqueda y el registro en el control «DGTabla», ahora teniendo claro las instrucciones que utilizaremos, daremos doble clic al botón «BtnBuscar» para poder programa nuestro procedimiento e ingresaremos el siguiente código:</p><div class="wordads-ad-wrapper" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inherit; font-family: Arial, sans-serif; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: 11px; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; letter-spacing: 1px; line-height: normal; margin: 25px auto; padding: 0px; width: 612px;"><div data-adtags-width="612" id="atatags-26942-473074" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; height: 272px; margin: 0px auto; overflow: hidden; padding: 0px; width: 300px;"><div class="ata-controls" id="atatags-26942-473074__controls" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; height: 10px; line-height: 10px; margin: 0px; padding: 0px; text-align: right; width: 300px;"><table border="0" cellpadding="0" cellspacing="0" style="-webkit-font-smoothing: antialiased; background: none !important; border-collapse: collapse; border-radius: 0px !important; border-spacing: 0px; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; empty-cells: show; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; table-layout: auto !important; vertical-align: baseline !important; width: 748.219px;"><tbody style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"><tr style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"><td class="gutter" style="-webkit-font-smoothing: antialiased; background: rgb(249, 249, 249); border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(175, 175, 175) !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"><div class="line number1 index0 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">1</div><div class="line number2 index1 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">2</div><div class="line number3 index2 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">3</div><div class="line number4 index3 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">4</div><div class="line number5 index4 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">5</div><div class="line number6 index5 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">6</div><div class="line number7 index6 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">7</div><div class="line number8 index7 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">8</div><div class="line number9 index8 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">9</div><div class="line number10 index9 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">10</div><div class="line number11 index10 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">11</div><div class="line number12 index11 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">12</div><div class="line number13 index12 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">13</div><div class="line number14 index13 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">14</div><div class="line number15 index14 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">15</div><div class="line number16 index15 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-bottom-color: initial !important; border-bottom-style: initial !important; border-image: initial !important; border-left-color: initial !important; border-left-style: initial !important; border-radius: 0px !important; border-right-color: rgb(108, 226, 108) !important; border-right-style: solid !important; border-top-color: initial !important; border-top-style: initial !important; border-width: 0px 3px 0px 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px 1em 0px 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px 0.5em 0px 0px !important; position: static !important; text-align: right !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;">16</div></td><td class="code" style="-webkit-font-smoothing: antialiased; background: rgb(249, 249, 249); border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: 701.016px;"><div class="container" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: relative !important; vertical-align: baseline !important; width: auto !important;"><div class="line number1 index0 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb comments" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">':::Try Capturador de errores</code></div><div class="line number2 index1 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Try</code></div><div class="line number3 index2 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb comments" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">':::Nos permite recorrer las filas del DGTabla</code></div><div class="line number4 index3 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">For</code> <code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Each</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Row </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">As</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">DataGridViewRow </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">In</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">DGTabla.Rows</code></div><div class="line number5 index4 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb comments" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">':::Nos permite recorrer las celdas del DGTabla</code></div><div class="line number6 index5 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">For</code> <code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Each</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Cell </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">As</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">DataGridViewCell </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">In</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Row.Cells</code></div><div class="line number7 index6 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb comments" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">':::Validamos el registro del DGTabla contra el criterio de busqueda</code></div><div class="line number8 index7 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">If</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Cell.Value.ToString = TxtBuscar.Text </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Then</code></div><div class="line number9 index8 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb comments" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 130, 0) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">':::Nos ubicamos en la celda que contiene el registro encontrado</code></div><div class="line number10 index9 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">DGTabla.CurrentCell = Cell</code></div><div class="line number11 index10 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">End</code> <code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">If</code></div><div class="line number12 index11 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Next</code></div><div class="line number13 index12 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Next</code></div><div class="line number14 index13 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Catch</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">ex </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">As</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Exception</code></div><div class="line number15 index14 alt2" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">MsgBox(</code><code class="vb string" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 0, 255) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">"No se puede realizar la búsqueda por: "</code> <code class="vb plain" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">& ex.Message)</code></div><div class="line number16 index15 alt1" style="-webkit-font-smoothing: antialiased; background: none rgb(255, 255, 255) !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; float: none !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; white-space: pre !important; width: auto !important;"><code class="vb spaces" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;"> </code><code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">End</code> <code class="vb keyword" style="-webkit-font-smoothing: antialiased; background: none !important; border-radius: 0px !important; border: 0px !important; box-shadow: none !important; box-sizing: content-box !important; color: rgb(0, 102, 153) !important; direction: ltr !important; display: inline !important; float: none !important; font-family: Monaco, Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 1em !important; font-weight: 700 !important; height: auto !important; inset: auto !important; line-height: 1.1em !important; margin: 0px !important; outline: 0px !important; overflow: visible !important; padding: 0px !important; position: static !important; vertical-align: baseline !important; width: auto !important;">Try</code></div></div></td></tr></tbody></table></div></div></div><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Como podemos observar en el código anterior lo que hacemos es ir de fila en fila y de celda en celda comparando el valor de cada celda con el criterio de búsqueda ingresado por el usuario.</p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;"><img alt="sshot-2" class=" size-full wp-image-777 aligncenter" data-attachment-id="777" data-comments-opened="1" data-image-caption="" data-image-description="" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}" data-image-title="sshot-2" data-large-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=411" data-medium-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=300" data-orig-file="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png" data-orig-size="411,315" data-permalink="https://aprendamosdeprogramacion.wordpress.com/2016/10/07/buscar-en-un-datadridview-sin-conexion-a-base-de-datos-en-vb-net/sshot-2-7/" loading="lazy" sizes="(max-width: 411px) 100vw, 411px" src="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=616" srcset="https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png 411w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=150&h=115 150w, https://aprendamosdeprogramacion.files.wordpress.com/2016/10/sshot-26.png?w=300&h=230 300w" style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; clear: both; display: block; font-family: inherit; height: auto; line-height: 1; margin: 0px auto; max-width: 100%; padding: 0px; text-align: left;" /></p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px; text-align: justify;">Como vemos el procedimiento se ejecuta correctamente y deja seleccionada la celda que coincide con el criterio de búsqueda.</p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px;">Cualquier duda estaré presto a colaborarles en todo lo que me este posible.</p><p style="-webkit-font-smoothing: antialiased; border: 0px; box-sizing: border-box; font-family: inherit; line-height: 28.9px; margin: 0px 0px 1.5em; padding: 0px;">Buen día para todos.</p></div></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-2290712253382664912023-08-22T08:22:00.004-07:002023-08-22T08:22:56.960-07:00Converting .exe project to class library<p> https://stackoverflow.com/questions/8524790/converting-exe-project-to-class-library</p><p><br /></p><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px 0px 1.1em; padding: 0px; vertical-align: baseline;">Project > Properties > Application tab, change Output type to "Class Library".</p><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">For the record, this isn't actually necessary. An EXE project works fine as an assembly reference. Assuming classes were declared public, something you might have to fix anyway to make them work in a library.</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-86978450440682678912023-08-12T08:53:00.004-07:002023-08-12T08:53:44.136-07:00revisar si esta mount dispositivo<p> mountpoint -q /mnt/externaldrive && echo "mounted" || mount /dev/sdb1 /mnt/externaldrive</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-39812229386752509462023-08-05T12:29:00.003-07:002023-08-05T12:29:56.882-07:00ejecutar al iniciar win + 10<p>win + R </p><p>shell:startup</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-78049652217507401512023-08-03T15:16:00.004-07:002023-08-03T15:16:31.006-07:00adding .gitignore<p>git rm -r --cached .</p><p> git add .</p><p>git commit -m ".gitignore actualizado."</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-86023405036105406672023-07-22T16:28:00.002-07:002023-07-22T16:28:40.465-07:00How to set up a Unity project in GitHub<p> https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/</p><header style="background-color: #333333; box-sizing: border-box; color: #dddddd; font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif; font-size: 22px; transition: all 0.2s ease-in-out 0s;"><h1 class="page__title" id="page-title" itemprop="headline" style="box-sizing: border-box; font-size: 1.563em; line-height: 1; margin: 0px 0px 0.5em; transition: all 0.2s ease-in-out 0s;">How to set up a Unity project in GitHub</h1></header><section class="page__content" itemprop="text" style="background-color: #333333; box-sizing: border-box; clear: both; color: #dddddd; float: left; font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", "Lucida Grande", Arial, sans-serif; font-size: 22px; margin-left: 0px; margin-right: 0px; position: relative; width: 636px;"><aside class="sidebar__right " style="box-sizing: border-box; margin-bottom: 1em; margin-right: -300px; padding-left: 1em; position: absolute; right: 0px; top: 0px; width: 300px; z-index: 10;"><nav class="toc" style="border-radius: 4px; border: 1px solid rgb(92, 92, 92); box-shadow: rgba(0, 0, 0, 0.125) 0px 1px 1px; box-sizing: border-box; color: #7a8288;"><header style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><h4 class="nav__title" style="background: rgb(48, 78, 112); border-top-left-radius: 4px; border-top-right-radius: 4px; box-sizing: border-box; color: white; font-size: 0.75em; line-height: 1.2; margin: 0px; padding: 0.5rem 0.75rem;"><svg aria-hidden="true" class="svg-inline--fa fa-list-alt fa-w-16" data-fa-i2svg="" data-icon="list-alt" data-prefix="fas" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M464 480H48c-26.51 0-48-21.49-48-48V80c0-26.51 21.49-48 48-48h416c26.51 0 48 21.49 48 48v352c0 26.51-21.49 48-48 48zM128 120c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm0 96c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zm288-136v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12zm0 96v-32c0-6.627-5.373-12-12-12H204c-6.627 0-12 5.373-12 12v32c0 6.627 5.373 12 12 12h200c6.627 0 12-5.373 12-12z" fill="currentColor"></path></svg> In this page</h4></header><ul class="toc__menu" style="box-sizing: border-box; font-size: 0.6875em; list-style: none; margin: 0px; orphans: 3; padding: 0px; widows: 3; width: 276.4px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#pre-requisites" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Pre-requisites</a><ul style="box-sizing: border-box; margin: 0px; padding: 0px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#unity" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Unity</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#git-client" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Git Client</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#github-account" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">GitHub account</a></li></ul></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-1---create-the-project" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 1 - Create the project</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-2---project-settings-for-version-control" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 2 - Project settings for version control</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-3---initialize-the-project-for-git" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 3 - Initialize the project for git</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-4---take-a-look-inside-your-new-project" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 4 - Take a look inside your new project</a><ul style="box-sizing: border-box; margin: 0px; padding: 0px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#source-files" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Source files</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#transient-files" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Transient files</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#local-settings" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Local settings</a></li></ul></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-5---what-to-commit-what-to-ignore" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 5 - What to commit? What to ignore?</a><ul style="box-sizing: border-box; margin: 0px; padding: 0px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#adding-gitignore" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Adding .gitignore</a></li></ul></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-6---checking-our-gitignore" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 6 - Checking our .gitignore</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-7---staging-files-for-commit" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 7 - Staging files for commit</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-8---committing-the-staged-files" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 8 - Committing the staged files</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-9---inspecting-our-first-commit" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 9 - Inspecting our first commit</a><ul style="box-sizing: border-box; margin: 0px; padding: 0px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#commit-history" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Commit history</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#commit-hash-our-commits-unique-identifier" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Commit hash, our commit’s unique identifier</a></li></ul></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-10---sharing-our-work-via-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 10 - Sharing our work via GitHub</a><ul style="box-sizing: border-box; margin: 0px; padding: 0px;"><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#sign-up-to-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; line-height: 1.5; padding: 0.25rem 0.75rem 0.25rem 1.25rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Sign-up to GitHub</a></li></ul></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-11---create-a-repository-in-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 11 - Create a repository in GitHub</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-12---setup-ssh-keys-to-access-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 12 - Setup SSH keys to access GitHub</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-13---connect-your-local-repository-to-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 13 - Connect your local repository to GitHub</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-14---push-your-local-changes-to-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 14 - Push your local changes to GitHub</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-15---cloning-a-clean-copy-from-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 15 - Cloning a clean copy from GitHub</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-16---test-our-fresh-clone" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 16 - Test our fresh clone</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-18---open-the-project-in-unity" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 18 - Open the project in Unity</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-19---committing-changes" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 19 - Committing changes</a></li><li class="" style="box-sizing: border-box; font-size: 1em; list-style: none; margin-bottom: 0px;"><a href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-20---move-quickly-by-avoiding-mistakes" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; color: #e9e9e9; display: block; font-weight: 700; line-height: 1.5; padding: 0.25rem 0.75rem; text-decoration-line: none; transition: all 0.2s ease-in-out 0s;">Step 20 - Move quickly by avoiding mistakes</a></li></ul></nav></aside><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">In this how-to guide we show you how to set up a Unity project for version control using GitHub.</p><h2 class="" id="pre-requisites" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Pre-requisites<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#pre-requisites" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">To follow along with this guide you will need the following:</p><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><h3 class="" id="unity" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Unity<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#unity" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; transition: all 0.2s ease-in-out 0s;">You can download and install different versions of Unity using <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Unity Hub</strong> which is available <a href="https://unity3d.com/get-unity/download" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">here</a>. It is worth getting a recent version of Unity because they have better support for version control. We used 2019.3.3f1 to write this guide.</p></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><h3 class="" id="git-client" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Git Client<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#git-client" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; transition: all 0.2s ease-in-out 0s;">We’ll be using the command line client in this tutorial. You download it, or alternatively a visual client, <a href="https://git-scm.com/downloads" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">here</a></p></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><h3 class="" id="github-account" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">GitHub account<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#github-account" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; transition: all 0.2s ease-in-out 0s;">A free account is fine to get started with. You can sign-up <a href="https://github.com/join" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">here</a>.</p></li></ul><h2 class="" id="step-1---create-the-project" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 1 - Create the project<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-1---create-the-project" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Open <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Unity Hub</strong></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Click the <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Add</strong> button in the top right.</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Choose the version of Unity. (we used 2019.3.3f1)</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Select the path where your new project’s directory will be created.</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Give your project a meaningful name.<ul style="box-sizing: border-box; margin-top: 0.5em;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">It’s best to avoid spaces and special characters as Unity will create a directory from the project name.</li></ul></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Click <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Create</strong> to create your project.</li></ul><h2 class="" id="step-2---project-settings-for-version-control" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 2 - Project settings for version control<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-2---project-settings-for-version-control" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">There are two important settings that your Unity project needs to have before you use it with git:</p><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Version Control Mode</strong> set to <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Visible Meta Files</strong><ul style="box-sizing: border-box; margin-top: 0.5em;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Instructions <a href="https://unityatscale.com/unity-meta-file-guide/faq/#should-i-choose-hidden-or-visible-meta-files-when-using-unity-with-a-version-control-system" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">here</a>.</li></ul></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Asset Serialization Mode</strong> set to <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Force Text</strong><ul style="box-sizing: border-box; margin-top: 0.5em;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Instructions <a href="https://unityatscale.com/unity-meta-file-guide/faq/#what-asset-serialization-mode-should-i-choose-when-using-unity-with-a-version-control-system" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">here</a>.</li></ul></li></ul><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">In modern versions of Unity, these settings are the default, but it is worth checking them if your project originated in an older version of Unity.</p><h2 class="" id="step-3---initialize-the-project-for-git" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 3 - Initialize the project for git<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-3---initialize-the-project-for-git" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Open a Command Line Window (PC) or a Terminal (Mac)</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">cd</code> into your new project’s directory</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Run <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git init</code> to add git conifiguration to your project<ul style="box-sizing: border-box; margin-top: 0.5em;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">This creates a hidden folder <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.git</code> within the project directory to hold the files git needs to version control the project</li></ul></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">Run <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git status</code> to see how git sees our project. You should see something like this:</li></ul><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ unity-meta-file-test git:(master) ✗ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
Assets/
Library/
Logs/
Packages/
ProjectSettings/
nothing added to commit but untracked files present (use "git add" to track)
</code></pre></div></div><h2 class="" id="step-4---take-a-look-inside-your-new-project" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 4 - Take a look inside your new project<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-4---take-a-look-inside-your-new-project" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We can see that our new project directory contains a bunch of directories that Unity has created for us.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">These directories contain files falling in to one of three broad categories:</p><h3 class="" id="source-files" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Source files<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#source-files" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">These directories contain the files that your project is built from.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Examples of source files are the Scenes, textures, models, source code, etc. stored in the <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Assets/</code> directory.</p><h3 class="" id="transient-files" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Transient files<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#transient-files" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">These files are created by Unity as you use it to create and build your project.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Typically they don’t contain anything that can’t be created from the source files above. Examples are the asset cache in <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Library/</code> and the log files in <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Logs/</code></p><h3 class="" id="local-settings" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Local settings<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#local-settings" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">These files contain settings that are local to you and your machine.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">These files contain things like your personal preferences for window layout and the like. Examples are files in the <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">/UserSettings/</code> folder.</p><h2 class="" id="step-5---what-to-commit-what-to-ignore" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 5 - What to commit? What to ignore?<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-5---what-to-commit-what-to-ignore" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p class="notice--warning" style="background-color: #fbf2e6; border-radius: 4px; box-shadow: rgba(214, 127, 5, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-exclamation-triangle fa-w-18" data-fa-i2svg="" data-icon="exclamation-triangle" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Key point:</strong> This is one of the most common causes of confusion when setting up a Unity project for use with a version control system.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">In order to collaborate on your project, your teammates only need a subset of the files from the project directory. Specifically, the <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Source files</strong> in the first category above.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Everything else can either by re-created from the source files or is of no interest to anyone but you. We need to tell Git to ignore these files so that they never get considered for version control.</p><h3 class="" id="adding-gitignore" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Adding .gitignore<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#adding-gitignore" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We do this by adding a file called <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.gitignore</code> containing details of the files that should be ignored.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Once we have created this file, we’ll add it version control so that our team mates can share it. That way everyone will have the same “clean” view of the project that excludes all of the transient and local setting files.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">GitHub provide a great template <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.gitignore</code> file for use with Unity projects <a href="https://github.com/github/gitignore/blob/master/Unity.gitignore" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">here</a></p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">If you have <a href="https://curl.haxx.se/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">curl</a> installed you can download the template directly into your project directory like this:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">curl https://raw.githubusercontent.com/github/gitignore/master/Unity.gitignore --output .gitignore
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Alternatively, create a new file with your text editor, paste in the contents of the template from the above URL and save it as <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.gitignore</code> in the root of your project directory.</p><p class="notice--info" style="background-color: #ebf5f8; border-radius: 4px; box-shadow: rgba(59, 156, 186, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-star fa-w-18" data-fa-i2svg="" data-icon="star" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Heads up:</strong> Use GitHub’s <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Raw</strong> button to get a view of the file that is suitable for copy and pasting. <img alt="GitHub Raw View" src="https://d33wubrfki0l68.cloudfront.net/71d64c877891d6212362f8766fd4f33050c3b070/49eda/assets/img/github-raw-view.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; transition: all 0.2s ease-in-out 0s; vertical-align: middle;" /></p><h2 class="" id="step-6---checking-our-gitignore" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 6 - Checking our <code class="highlighter-rouge" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">.gitignore</code><a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-6---checking-our-gitignore" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now, when we run <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git status</code> again we should see only the files and directories that need to be added to git, with the rest being quietly ignored thanks to our <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.gitignore</code> file.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ unity-meta-file-test git:(master) ✗ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
.gitignore
Assets/
Packages/
ProjectSettings/
nothing added to commit but untracked files present (use "git add" to track)
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The directories containing transient and local setting files (like <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Library/</code>) have been omitted.</p><h2 class="" id="step-7---staging-files-for-commit" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 7 - Staging files for commit<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-7---staging-files-for-commit" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The process of saving a set of changes to git is known as a <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">commit</strong>ing. We’re now ready to commit our project for the first time.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The first thing we have to do is tell git which files we want to commit. This is known as <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">staging</strong> the files for commit.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We run the <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git add .</code> command to stage files for commit. In this case we specify “.” to add everything in the current directory.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Once you have staged the files, run <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git status</code> to see what has happened.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ unity-meta-file-test git:(master) ✗ git status
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: .gitignore
new file: Assets/Scenes.meta
new file: Assets/Scenes/SampleScene.unity
new file: Assets/Scenes/SampleScene.unity.meta
new file: Packages/manifest.json
new file: ProjectSettings/AudioManager.asset
new file: ProjectSettings/ClusterInputManager.asset
new file: ProjectSettings/DynamicsManager.asset
new file: ProjectSettings/EditorBuildSettings.asset
new file: ProjectSettings/EditorSettings.asset
new file: ProjectSettings/GraphicsSettings.asset
new file: ProjectSettings/InputManager.asset
new file: ProjectSettings/NavMeshAreas.asset
new file: ProjectSettings/Physics2DSettings.asset
new file: ProjectSettings/PresetManager.asset
new file: ProjectSettings/ProjectSettings.asset
new file: ProjectSettings/ProjectVersion.txt
new file: ProjectSettings/QualitySettings.asset
new file: ProjectSettings/TagManager.asset
new file: ProjectSettings/TimeManager.asset
new file: ProjectSettings/UnityConnectSettings.asset
new file: ProjectSettings/VFXManager.asset
new file: ProjectSettings/XRSettings.asset
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">You’ll see that everything in our source directories have been moved to the <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Changes to be comitted</code> section at the top of the output.</p><h2 class="" id="step-8---committing-the-staged-files" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 8 - Committing the staged files<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-8---committing-the-staged-files" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now we specified which files we will be committing by <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">staging</strong> them, let’s go ahead and commit them to Git with:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git commit -m "First commit, empty project and .gitignore"
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">-m</code> option lets us add a message describing what we have committed.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">It is a good idea to use meaningful commit messages as they will help you understand the history of your project and diagnose problems in the future.</p><p class="notice--info" style="background-color: #ebf5f8; border-radius: 4px; box-shadow: rgba(59, 156, 186, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-star fa-w-18" data-fa-i2svg="" data-icon="star" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Pro tip!</strong> Commit messages don’t need to be too wordy. For instance, you don’t need to repeat all of the files that you have changed as git takes care of that.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />Conversely, they should contain enough information to allow you and your teammates to understand what each commit contains.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />Lazy messages like “add stuff” will be really frustrating if you ever have to revisit the commit in the future.<br style="box-sizing: border-box;" /></p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ unity-meta-file-test git:(master) ✗ git commit -m "First commit, empty project and .gitignore"
[master (root-commit) abc2f72] First commit, empty project and .gitignore
23 files changed, 2010 insertions(+)
create mode 100644 .gitignore
create mode 100644 Assets/Scenes.meta
create mode 100644 Assets/Scenes/SampleScene.unity
create mode 100644 Assets/Scenes/SampleScene.unity.meta
create mode 100644 Packages/manifest.json
create mode 100644 ProjectSettings/AudioManager.asset
create mode 100644 ProjectSettings/ClusterInputManager.asset
create mode 100644 ProjectSettings/DynamicsManager.asset
create mode 100644 ProjectSettings/EditorBuildSettings.asset
create mode 100644 ProjectSettings/EditorSettings.asset
create mode 100644 ProjectSettings/GraphicsSettings.asset
create mode 100644 ProjectSettings/InputManager.asset
create mode 100644 ProjectSettings/NavMeshAreas.asset
create mode 100644 ProjectSettings/Physics2DSettings.asset
create mode 100644 ProjectSettings/PresetManager.asset
create mode 100644 ProjectSettings/ProjectSettings.asset
create mode 100644 ProjectSettings/ProjectVersion.txt
create mode 100644 ProjectSettings/QualitySettings.asset
create mode 100644 ProjectSettings/TagManager.asset
create mode 100644 ProjectSettings/TimeManager.asset
create mode 100644 ProjectSettings/UnityConnectSettings.asset
create mode 100644 ProjectSettings/VFXManager.asset
create mode 100644 ProjectSettings/XRSettings.asset
</code></pre></div></div><h2 class="" id="step-9---inspecting-our-first-commit" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 9 - Inspecting our first commit<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-9---inspecting-our-first-commit" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now that we have committed our files, let’s run <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git status</code> again to see where we are at.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ unity-meta-file-test git:(master) git status
On branch master
nothing to commit, working tree clean
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Where did all our changed files go? They have been committed to our local git repository.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">But if you do a directory listing we’ll see that the files are still there in our project directory.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;"> ➜ unity-meta-file-test git:(master) ls
Assets Library Logs Packages ProjectSettings
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The key thing to learn here is that git status only shows the files that are different from our git repository.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now that our changes have been committed, the repository has the same contents as our project directory. Because they match, there are no changes for git to show us.</p><h3 class="" id="commit-history" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Commit history<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#commit-history" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Git keeps a log of all changes that we ever committed to the repository. That’s every change, to every file along with the commit message.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">This log gives a complete history of how our project evolved over time. Let’s take a look at it with <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git log --name-only</code></p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">commit abc2f723844a4d095335899fc1c40cb7fae14180 (HEAD -> master)
Author: UnityAtScale <57212682+unity-at-scale@users.noreply.github.com>
Date: Thu Feb 27 09:19:45 2020 +0000
First commit, empty project and .gitignore
.gitignore
Assets/Scenes.meta
Assets/Scenes/SampleScene.unity
Assets/Scenes/SampleScene.unity.meta
Packages/manifest.json
ProjectSettings/AudioManager.asset
ProjectSettings/ClusterInputManager.asset
ProjectSettings/DynamicsManager.asset
ProjectSettings/EditorBuildSettings.asset
ProjectSettings/EditorSettings.asset
ProjectSettings/GraphicsSettings.asset
ProjectSettings/InputManager.asset
ProjectSettings/NavMeshAreas.asset
ProjectSettings/Physics2DSettings.asset
ProjectSettings/PresetManager.asset
ProjectSettings/ProjectSettings.asset
ProjectSettings/ProjectVersion.txt
ProjectSettings/QualitySettings.asset
ProjectSettings/TagManager.asset
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">There’s our commit, along with it’s description and the files we committed.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Later, when we push the repository to GitHub, we will be able use GitHub’s web user interface to browse through our commit history in a much friendlier way.</p><h3 class="" id="commit-hash-our-commits-unique-identifier" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Commit hash, our commit’s unique identifier<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#commit-hash-our-commits-unique-identifier" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The long hexadecimal number above starting <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">abc2f...</code> is the <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">hash</strong> for the commit.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">This number uniquely identifies the commit. This is useful when we want to refer to the commit in future, for instance if we want to undo it, remind ourselves of what files it changed or send it to colleague for review.</p><h2 class="" id="step-10---sharing-our-work-via-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 10 - Sharing our work via GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-10---sharing-our-work-via-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now that we have our project in a local git repository, it is time to share it with the team. So far we have been working entirely locally. None of our work has left our machine.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">To share our work with the team we need <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">push</strong> the changes that we have committed to our local git repository to a server or service where our team mates can get hold of them.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Shared repositories like this are known as <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">remote</strong> repositories and sending changes from our local repository to the remote repository is known as <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">push</strong>ing.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The GitHub service allows us to create remote repositories that are stored in the cloud where they can be accessed by our team mates.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">While we are using <a href="https://github.com/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">GitHub</a> here, there are plenty of other git services available, each with their own strengths and weakness. Some you might want to take a look at are <a href="https://about.gitlab.com/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">GitLab</a>, <a href="https://bitbucket.org/product" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">BitBucket</a> and <a href="https://azure.microsoft.com/en-gb/services/devops/repos/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">Microsoft Azure Repos</a>.</p><h3 class="" id="sign-up-to-github" style="box-sizing: border-box; font-size: 1em; line-height: 1.2; margin: 2em 0px 0.5em;">Sign-up to GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#sign-up-to-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h3><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The first thing you will need is a GitHub account. GitHub offers a variety of plans, ranging both free and paid.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">At the time of writing the free plan is a good place to get started for the purposes of this guide, but you should keep your eye on the paid plans if you are planning to use the repository on a larger project.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The paid plans give you the ability to collaborate with a bigger team. They also give you additional storage space if your project includes a lot of large assets.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Sign up to GitHub <a href="https://github.com/join" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">here</a>.</p><h2 class="" id="step-11---create-a-repository-in-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 11 - Create a repository in GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-11---create-a-repository-in-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Once you are signed up to GitHub, we need to create an empty repository to push our local changes to.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">GitHub provide a great set of instructions creating a new repository <a href="https://help.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-new-repository" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">here</a></p><p class="notice--warning" style="background-color: #fbf2e6; border-radius: 4px; box-shadow: rgba(214, 127, 5, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-exclamation-triangle fa-w-18" data-fa-i2svg="" data-icon="exclamation-triangle" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Attention</strong> Watch out for the <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">visibility</strong> setting when creating your new repository.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />GitHub’s default for free accounts is to make the repository <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">publicly visible</strong> which means anyone on the internet can access it.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />If this isn’t what you want, choose the <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Private</strong> option so the repository can only be seen by people that you invite.</p><h2 class="" id="step-12---setup-ssh-keys-to-access-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 12 - Setup SSH keys to access GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-12---setup-ssh-keys-to-access-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The git client is capable of using a <a href="https://git-scm.com/book/en/v2/Git-on-the-Server-The-Protocols" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">variety of different protocols</a> when connecting to a remote repository like the one we just setup in GitHub.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Which one you use is up to you, but we have had good results with SSH as it offers a decent balance between simplicity, security and flexibility.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">GitHub show you how to setup SSH access to your GitHub repositories <a href="https://help.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">here</a>. The key thing to note down is the repository URL at end of the creation process.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">It should look something like this:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git@github.com:<YOUR_GITHUB_USERNAME/YOUR_GITHUB_REPO>.git
</code></pre></div></div><h2 class="" id="step-13---connect-your-local-repository-to-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 13 - Connect your local repository to GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-13---connect-your-local-repository-to-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Once you have SSH access to GitHub configured, you need tell your local repository about the remote repository. By doing this, you are letting git know where to look when you <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">push</strong> or <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">pull</strong> changes from the local repo to the remote one.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Go back to your command line session and after checking that you <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">cd</code>‘d into your project directory, run this command to configure the remote repository, substituting the URL for your own repository.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git remote add origin <GITHUB_REPOSITORY_URL>
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">In our case it looked like this:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git remote add origin git@github.com:unity-at-scale/unity-meta-file-test.git
</code></pre></div></div><h2 class="" id="step-14---push-your-local-changes-to-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 14 - Push your local changes to GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-14---push-your-local-changes-to-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now that we have the local repository connected to the remote one, let’s try to push our local commits to GitHub with:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git push
➜ unity-meta-file-test git:(master) git push
fatal: The current branch master has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin master
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Unfortunately we are seeing an error here rather than a successful push.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Git is telling us that while it knows where to find the remote repository it doesn’t know which branch in that repository corresponds to the “master” branch in our local repository.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Git helpfully tells us how to configure the remote branch in the error message.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">For simplicity it is a good idea to follow git’s default behavior and use consistent names for your local and remote branches. For example, the branch “master” in your local repository will push to the branch “master” in your remote repository.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Let’s accept Git’s suggested configuration:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">git push --set-upstream origin master
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now if we go back to the project in GitHub, we’ll see the files from our first commit like this:</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;"><img alt="GitHub First Commit" src="https://d33wubrfki0l68.cloudfront.net/76a62701a0655c90f23d36dd4ef0fc4404a85589/41193/assets/img/github-first-commit.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; transition: all 0.2s ease-in-out 0s; vertical-align: middle;" /></p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We will also see that we have a single commit, showing:</p><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">The commit message.</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">The files that were changed in the commit.</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;">The commit hash.</li></ul><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;"><img alt="GitHub Commit Detail" src="https://d33wubrfki0l68.cloudfront.net/76a62701a0655c90f23d36dd4ef0fc4404a85589/41193/assets/img/github-first-commit.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; transition: all 0.2s ease-in-out 0s; vertical-align: middle;" /></p><p class="notice--info" style="background-color: #ebf5f8; border-radius: 4px; box-shadow: rgba(59, 156, 186, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-star fa-w-18" data-fa-i2svg="" data-icon="star" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Pro tip</strong> Notice how Github doesn’t show diffs for .meta files by default.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />This is because Unity is supposed to manage them us and we shouldn’t need to look into them.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />This is the case most of the time but occasionally you may need to look inside them as we’ll see in our <a href="https://unityatscale.com/unity-meta-file-guide/meta-file-deep-dive/" style="box-sizing: border-box; color: #3b9cba; transition: all 0.2s ease-in-out 0s;">deep dive into meta files</a>.</p><h2 class="" id="step-15---cloning-a-clean-copy-from-github" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 15 - Cloning a clean copy from GitHub<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-15---cloning-a-clean-copy-from-github" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Before you start <a href="https://help.github.com/en/github/setting-up-and-managing-your-github-user-account/inviting-collaborators-to-a-personal-repository" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;" target="_blank">inviting your team mates</a> to the project repository in GitHub, let’s verify that it is complete and ready for use.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">To do that we will pull down a clean copy of the repository from GitHub in to a new directory on our machine. Git calls the process of pulling a repository for the first time <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">cloning the repository</strong>.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Doing a fresh clone mimics the experience that our team mates will have when they first start using the repository from GitHub.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">First, leave the directory your original project directory:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">cd ..
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Then, clone a copy into a new directory like this, where DESTINATION_DIRECTORY is the name of a new directory that git will clone into.</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ work git clone <DESTINATION_DIRECTORY>
Cloning into 'coworker-unity-meta-file-test'...
remote: Enumerating objects: 29, done.
remote: Counting objects: 100% (29/29), done.
remote: Compressing objects: 100% (28/28), done.
remote: Total 29 (delta 0), reused 29 (delta 0), pack-reused 0
Receiving objects: 100% (29/29), 15.75 KiB | 7.87 MiB/s, done.
➜ work
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">I used <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">coworker-unity-meta-file-test</code> so my fresh clone will end up a directory with that name.</p><p class="notice--warning" style="background-color: #fbf2e6; border-radius: 4px; box-shadow: rgba(214, 127, 5, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-exclamation-triangle fa-w-18" data-fa-i2svg="" data-icon="exclamation-triangle" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Note</strong> Normally, your team mates would omit the second argument and git would clone into a directory named after the repository.</p><h2 class="" id="step-16---test-our-fresh-clone" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 16 - Test our fresh clone<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-16---test-our-fresh-clone" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">cd</code> into the directory containing our new clone and verify that everything is there:</p><div class="highlighter-rouge" style="background: rgb(31, 31, 31); border-radius: 4px; box-sizing: border-box; color: #b5b3aa; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.75em; line-height: 1.8; margin-bottom: 1em; position: relative;"><div class="highlight" style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;"><pre class="highlight" style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; margin-bottom: 0px; margin-top: 0px; orphans: 3; overflow-x: auto; padding: 1em; transition: all 0.2s ease-in-out 0s; widows: 3; width: 636px;"><code style="box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace;">➜ coworker-unity-meta-file-test git:(master) git status
On branch master
Your branch is up to date with 'origin/master'.
nothing to commit, working tree clean
➜ coworker-unity-meta-file-test git:(master) ls
Assets Packages ProjectSettings
➜ coworker-unity-meta-file-test git:(master)
</code></pre></div></div><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We can see the three principle directories <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Assets/</code>, <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Packages/</code> and <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">ProjectSettings/</code> which looks positive.</p><h2 class="" id="step-18---open-the-project-in-unity" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 18 - Open the project in Unity<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-18---open-the-project-in-unity" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now let’s load up our new copy into Unity and make sure that everything works.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Go to <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Unity Hub</strong>, add the fresh clone directory and open it.</p><p class="notice--warning" style="background-color: #fbf2e6; border-radius: 4px; box-shadow: rgba(214, 127, 5, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-exclamation-triangle fa-w-18" data-fa-i2svg="" data-icon="exclamation-triangle" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M569.517 440.013C587.975 472.007 564.806 512 527.94 512H48.054c-36.937 0-59.999-40.055-41.577-71.987L246.423 23.985c18.467-32.009 64.72-31.951 83.154 0l239.94 416.028zM288 354c-25.405 0-46 20.595-46 46s20.595 46 46 46 46-20.595 46-46-20.595-46-46-46zm-43.673-165.346l7.418 136c.347 6.364 5.609 11.346 11.982 11.346h48.546c6.373 0 11.635-4.982 11.982-11.346l7.418-136c.375-6.874-5.098-12.654-11.982-12.654h-63.383c-6.884 0-12.356 5.78-11.981 12.654z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Note:</strong> You will probably see Unity take a while “importing assets” while it repopulates its local caches from the source files in the project.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />This will recreate the <code class="highlighter-rouge" style="background: rgb(253, 249, 243); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">Library/</code> directory in your project, but you won’t see that as a change because we excluded it from version control above using the <code class="highlighter-rouge" style="background: rgb(253, 249, 243); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">.gitignore</code>.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />You only tend to see see this delay when you first open a fresh clone of the project. Unity will then work from your local caches, making subsequent opens much quicker.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Once Unity has opened the project, hit <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Play</strong> and verify that everything behaves as expected.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">If it doesn’t, fix up any missing files or errors and then stage and commit your changes to source control as described below.</p><h2 class="" id="step-19---committing-changes" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 19 - Committing changes<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-19---committing-changes" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Now that your project is setup in GitHub, you can get on with developing, making changes to your project and committing them to git as you go.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Each time you have a set of changes ready to share with your team, you’ll be going through the following process to stage and commit them in git:</p><ul style="box-sizing: border-box; orphans: 3; widows: 3;"><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Stage</strong> the changes to commit - <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git add <FILES TO ADD></code></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Check</strong> that the changes are valid and complete, with no missing meta files, duplicate GUIDs etc.</li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Commit</strong> the change - <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git commit -m "<YOUR MESSAGE>"</code></li><li style="box-sizing: border-box; font-size: 1em; margin-bottom: 0.5em;"><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Push</strong> the changes to GitHub - <code class="highlighter-rouge" style="background: rgb(41, 41, 41); border-radius: 4px; box-sizing: border-box; font-family: Monaco, Consolas, "Lucida Console", monospace; font-size: 0.8em; padding-bottom: 0.1rem; padding-top: 0.1rem;">git push</code></li></ul><p class="notice--info" style="background-color: #ebf5f8; border-radius: 4px; box-shadow: rgba(59, 156, 186, 0.25) 0px 1px 1px; box-sizing: border-box; color: #494e52; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; padding: 1em; text-indent: initial; transition: all 0.2s ease-in-out 0s; widows: 3;"><svg aria-hidden="true" class="svg-inline--fa fa-star fa-w-18" data-fa-i2svg="" data-icon="star" data-prefix="fas" focusable="false" role="img" viewbox="0 0 576 512" xmlns="http://www.w3.org/2000/svg"><path d="M259.3 17.8L194 150.2 47.9 171.5c-26.2 3.8-36.7 36.1-17.7 54.6l105.7 103-25 145.5c-4.5 26.3 23.2 46 46.4 33.7L288 439.6l130.7 68.7c23.2 12.2 50.9-7.4 46.4-33.7l-25-145.5 105.7-103c19-18.5 8.5-50.8-17.7-54.6L382 150.2 316.7 17.8c-11.7-23.6-45.6-23.9-57.4 0z" fill="currentColor"></path></svg> <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Pro tip!</strong> It is good practice to use a strategy of “little and often” when committing, with each commit containing a cohesive set of changes that can be easily described in the commit message.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />For instance, a commit of 10 files with the description “Add loading screen” is easy for you and your colleagues to comprehend. When someone sees it the git history or is asked to review it, they can be pretty sure what those changes are supposed to achieve in your game.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" />As a counter example, a commit of 150 files with the description “Add loading screen, reorder high score table and add end of level ceremony” is much more difficult for people to make sense of. If we find that the commit introduced a defect, we have a large set of changes to pick through in order to diagnose it.<br style="box-sizing: border-box;" /><br style="box-sizing: border-box;" /><strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">Keep your commits small, with meaningful descriptions.</strong></p><h2 class="" id="step-20---move-quickly-by-avoiding-mistakes" style="border-bottom: 1px solid rgb(92, 92, 92); box-sizing: border-box; font-size: 1.25em; line-height: 1.2; margin: 2em 0px 0.5em; padding-bottom: 0.5em; transition: all 0.2s ease-in-out 0s;">Step 20 - Move quickly by avoiding mistakes<a class="header-link" href="https://unityatscale.com/unity-version-control-guide/how-to-setup-unity-project-on-github/#step-20---move-quickly-by-avoiding-mistakes" style="box-sizing: border-box; color: #abc3de; font-size: 0.8em; left: 0.5em; opacity: 0; position: relative; transition: opacity 0.2s ease-in-out 0.1s;" title="Permalink"><span class="sr-only" style="border: 0px; box-sizing: border-box; clip: rect(0px, 0px, 0px, 0px); height: 1px; margin: -1px; overflow: hidden; padding: 0px; position: absolute; transition: all 0.2s ease-in-out 0s; width: 1px;">Permalink</span><svg aria-hidden="true" class="svg-inline--fa fa-link fa-w-16" data-fa-i2svg="" data-icon="link" data-prefix="fa" focusable="false" role="img" viewbox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z" fill="currentColor"></path></svg></a></h2><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The checking stage is where the majority of source control related issues arise with Unity. If someone forgets assets or meta files, they will break the project for the rest of the team.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">Breakages like this can be frustrating and costly, particularly if your team is pushing hard to deliver a milestone.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">We give strategies for handling breakages like these in our article, <a href="https://unityatscale.com/unity-meta-file-guide/forgotten-meta-file-stop-the-line/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">Forgotten meta file? Stop the Line!</a>, but a better approach is to invest a little bit of effort to stop breakages reaching the team in the first place. By doing this, you’ll go quicker in the long run.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The key to preventing breakages is catching problems <strong style="box-sizing: border-box; transition: all 0.2s ease-in-out 0s;">before</strong> they get committed, either through automatic tooling or a process that people follow before they commit changes.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">If you want to reduce the burden on your team, automation is the way to go and our <a href="https://ratelimited.io/metabuddy/?utm_source=unity_at_scale_website&utm_medium=how_to_setup_github_page&utm_campaign=default" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">MetaBuddy plugin for Unity</a> is a good place to start. It finds missing files automatically and advises on how they can be fixed, helping your team become more confident with every commit.</p><p style="box-sizing: border-box; font-size: 1em; margin: 0px 0px 1.3em; orphans: 3; transition: all 0.2s ease-in-out 0s; widows: 3;">The <a href="https://unityatscale.com/unity-meta-file-guide/checklist-committing-unity-assets/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">Unity Asset commit checklist</a> gives you a template for a manual, process based approach. Can’t decide whether to use a checklist or a tool? <a href="https://unityatscale.com/unity-version-control-guide/metabuddy-the-case-for-automated-meta-file-checking/" style="box-sizing: border-box; color: #abc3de; transition: all 0.2s ease-in-out 0s;">Learn from our experiences with both.</a></p></section>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-13767854200444556312023-07-18T09:32:00.005-07:002023-07-18T09:32:30.134-07:00Install GitLab CE on Ubuntu 20.04<p>https://lindevs.com/install-gitlab-ce-on-ubuntu </p><header style="border-bottom: 1px solid rgb(238, 238, 238); box-sizing: border-box; color: #222222; font-family: Roboto, sans-serif; font-size: 14px; margin: 0px 0px 20px; padding-bottom: 10px;"><h1 class="model-title" style="box-sizing: border-box; color: #000a12; font-family: Raleway, sans-serif; font-size: 1.75em; line-height: 1.25em; margin: 0px;">Install GitLab CE on Ubuntu 20.04</h1><ul class="model-meta" style="box-sizing: border-box; column-gap: 13px; display: flex; flex-wrap: wrap; font-size: 0.96em; line-height: 2em; list-style: none; margin: 5px 0px 0px; padding: 0px;"><li style="box-sizing: border-box;" title="Published on August 1, 2021 at 1:10 AM +00:00"><span class="fa fa-clock-o" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; color: #787878; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-right: 2px; text-rendering: auto;"></span><br /></li></ul></header><div class="entry" style="box-sizing: border-box; color: #222222; font-family: Roboto, sans-serif; font-size: 14px;"><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;"><span style="box-sizing: border-box; color: black; font-weight: 600; margin-bottom: 0px;">GitLab</span> is an open-source DevOps platform which provides Git repositories management, continuous integration, issue tracking, and other features. Self-managed GitLab can be installed on the own server.</p><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">This tutorial explains how to install GitLab Community Edition (CE) on Ubuntu 20.04.</p><h2 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-size: 18px; line-height: 1.4em; margin: 20px 0px;">Prepare environment</h2><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Run the following command to update the package lists:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo apt update</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Make sure you have installed OpenSSH server:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo apt install -y openssh-server</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><h2 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-size: 18px; line-height: 1.4em; margin: 20px 0px;">Install GitLab CE</h2><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Add the GitLab CE package repository:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">wget -qO - https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Install the GitLab CE:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo apt install -y gitlab-ce</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">When installation is completed, we can check GitLab CE version:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">grep gitlab /opt/gitlab/version-manifest.txt</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Now we need to set the URL which will be used to access the GitLab instance. It can be done in configuration file:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo nano /etc/gitlab/gitlab.rb</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Find <code style="background-color: #ecf0f3; box-sizing: border-box; font-family: Consolas, monospace; font-size: 0.95em; margin-bottom: 0px; overflow-wrap: break-word; padding: 0px 1px;">external_url</code> parameter and set IP address or hostname of your machine. Default port is 80, but you can explicitly set if needed.</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">external_url 'http://192.168.0.188:9000'</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">To make changes to take effect, reconfigure the GitLab:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo gitlab-ctl reconfigure</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">When it finished, we can check the status of GitLab services:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo gitlab-ctl status</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">We can also stop, start and restart the GitLab services:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">1</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">2</div><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">3</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo gitlab-ctl stop
sudo gitlab-ctl start
sudo gitlab-ctl restart</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><h2 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-size: 18px; line-height: 1.4em; margin: 20px 0px;">Testing GitLab CE</h2><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">By default, a random password is generated during installation. Password can be found in the following file:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo cat /etc/gitlab/initial_root_password</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Now open the browser and enter IP address or hostname to access the GitLab web interface. Use a username <code style="background-color: #ecf0f3; box-sizing: border-box; font-family: Consolas, monospace; font-size: 0.95em; margin-bottom: 0px; overflow-wrap: break-word; padding: 0px 1px;">root</code> and password from a file to login.</p><img alt="GitLab web interface" class="center" src="https://lindevs.com/uploads/posts/content/2021/08/gitlab_web_interface.png?v=1660482723" style="box-sizing: border-box; display: block; height: auto; margin: 16px auto; max-width: 100%;" /><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Password can be changed in user settings page:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;"><GITLAB_URL>/-/profile/password/edit</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><h2 style="box-sizing: border-box; font-family: Raleway, sans-serif; font-size: 18px; line-height: 1.4em; margin: 20px 0px;">Uninstall GitLab CE</h2><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">If you want to completely remove GitLab CE, execute the following command:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">1</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo apt purge --autoremove -y gitlab-ce</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">When it finished, remove systemd service:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">1</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">2</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">3</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">4</div><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">5</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo service gitlab-runsvdir stop
sudo systemctl disable gitlab-runsvdir
sudo rm -rf /usr/lib/systemd/system/gitlab-runsvdir.service
sudo systemctl daemon-reload
sudo systemctl reset-failed</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Remove GPG key and repository:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">1</div><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">2</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo apt-key del 51312F3F
sudo rm -rf /etc/apt/sources.list.d/gitlab_gitlab-ce.list</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">Remove GitLab users:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">1</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">2</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">3</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">4</div><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">5</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo deluser gitlab-www
sudo deluser gitlab-redis
sudo deluser gitlab-psql
sudo deluser gitlab-prometheus
sudo deluser git</div><div class="hljs-copy-button" style="background-color: #29434e; border-radius: 4px; box-sizing: border-box; color: white; cursor: pointer; height: 25px; line-height: 25px; margin-bottom: 0px; opacity: 0.05; position: absolute; right: 3px; text-align: center; top: 3px; transition: opacity 2s ease 0s; width: 25px; z-index: 1;" title="Copy to clipboard"><span class="fa fa-copy" style="-webkit-font-smoothing: antialiased; box-sizing: border-box; display: inline-block; font-family: FontAwesome; font-feature-settings: normal; font-kerning: auto; font-optical-sizing: auto; font-size: inherit; font-stretch: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-numeric: normal; font-variation-settings: normal; line-height: 1; margin-bottom: 0px; text-rendering: auto;"></span></div></code></pre><p style="box-sizing: border-box; font-size: 15px; margin: 16px 0px;">You can also remove GitLab configuration, logs, data, and other related directories:</p><pre class="highlighter" style="background-color: white; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-shadow: rgb(239, 239, 239) 1px 1px 3px; box-sizing: border-box; color: black; line-height: 1.45; margin-bottom: 0px; margin-top: 16px; position: relative; width: 778px;"><code class="language-plaintext hljs" style="background-color: inherit; box-sizing: border-box; display: flex; font-family: Consolas, monospace; font-size: inherit; margin-bottom: 0px; overflow-wrap: break-word; overflow-y: hidden; padding: 7px 0px;"><div aria-hidden="true" class="hljs-line-numbers" style="border-right: 3px solid rgb(182, 185, 182); box-sizing: border-box; user-select: none; z-index: 1;"><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">1</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">2</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">3</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">4</div><div style="box-sizing: border-box; color: #afafaf; padding: 0px 0.5em 0px 1em; text-align: right;">5</div><div style="box-sizing: border-box; color: #afafaf; margin-bottom: 0px; padding: 0px 0.5em 0px 1em; text-align: right;">6</div></div><div class="hljs-code" style="box-sizing: border-box; flex-grow: 1; padding: 0px 0.7em; z-index: 1;">sudo rm -rf /etc/gitlab
sudo rm -rf /var/log/gitlab
sudo rm -rf /var/opt/gitlab
sudo rm -rf /run/gitlab
sudo rm -rf /opt/gitlab
sudo rm </div></code></pre></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-88212315628649109012023-07-12T09:47:00.001-07:002023-07-12T09:47:18.545-07:00Xamarn forms: How to show a listview under a listview item?<p>https://stackoverflow.com/questions/61521479/xamarn-forms-how-to-show-a-listview-under-a-listview-item </p><p><span style="background-color: white; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-size: 15px;"><br /></span></p><p><span style="background-color: white; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-size: 15px;">You can create the listview with group style ,and customize the GroupHeaderTemplate , modify the binding data when click on the group , check my sample .</span></p><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px 0px 1.1em; padding: 0px; vertical-align: baseline;"><strong style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">XAML</strong></p><pre class="lang-xml s-code-block" style="--_cb-line-numbers-bg: var(--black-050); border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: var(--highlight-color); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: calc(1.5em); margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); vertical-align: baseline; width: auto;"><code class="hljs language-xml" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;"><span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">x:Name</span> =<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"lstView"</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">IsGroupingEnabled</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"true"</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView.GroupHeaderTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">DataTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ViewCell</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Label</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Text</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"{Binding LongName}"</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">BackgroundColor</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"LightBlue"</span> ></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Label.GestureRecognizers</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">TapGestureRecognizer</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Tapped</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"TapGestureRecognizer_Tapped"</span>/></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Label.GestureRecognizers</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Label</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ViewCell</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">DataTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView.GroupHeaderTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView.ItemTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">DataTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">TextCell</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Text</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"{Binding Name}"</span> <span class="hljs-attr" style="border: 0px; box-sizing: inherit; color: var(--highlight-attribute); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Detail</span>=<span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"{Binding Comment}"</span> /></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">DataTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView.ItemTemplate</span>></span>
<span class="hljs-tag" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></<span class="hljs-name" style="border: 0px; box-sizing: inherit; color: var(--highlight-namespace); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ListView</span>></span>
</code></pre><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px 0px 1.1em; padding: 0px; vertical-align: baseline;"><strong style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Model</strong></p><pre class="lang-cs s-code-block" style="--_cb-line-numbers-bg: var(--black-050); border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: var(--highlight-color); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: calc(1.5em); margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); vertical-align: baseline; width: auto;"><code class="hljs language-csharp" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">class</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">VeggieModel</span>
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">string</span> Name { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">string</span> Comment { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">bool</span> IsReallyAVeggie { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">string</span> Image { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-function" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">VeggieModel</span> ()</span>
{ }
}
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">class</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">GroupedVeggieModel</span> : <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ObservableCollection</span><<span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">VeggieModel</span>>
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">string</span> LongName { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">string</span> ShortName { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">bool</span> IsExpand { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
}
</code></pre><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px 0px 1.1em; padding: 0px; vertical-align: baseline;"><strong style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Page</strong></p><pre class="lang-cs s-code-block" style="--_cb-line-numbers-bg: var(--black-050); border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: var(--highlight-color); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: calc(1.5em); margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); vertical-align: baseline; width: auto;"><code class="hljs language-csharp" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">partial</span> <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">class</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">GroupedListXaml</span> : <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ContentPage</span>
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">private</span> ObservableCollection<GroupedVeggieModel> grouped { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">private</span> ObservableCollection<GroupedVeggieModel> groupedCopy { <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">get</span>; <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">set</span>; }
<span class="hljs-function" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">public</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">GroupedListXaml</span> ()</span>
{
InitializeComponent ();
grouped = InitData();
groupedCopy = InitData();
lstView.ItemsSource = grouped;
}
<span class="hljs-function" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">ObservableCollection<GroupedVeggieModel> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">InitData</span>()</span>
{
ObservableCollection<GroupedVeggieModel> grouped = <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> ObservableCollection<GroupedVeggieModel>();
GroupedVeggieModel veggieGroup = <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> GroupedVeggieModel() { LongName = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"vegetables"</span>, ShortName = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"v"</span>, IsExpand = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">true</span> };
GroupedVeggieModel fruitGroup = <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> GroupedVeggieModel() { LongName = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"fruit"</span>, ShortName = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"f"</span>, IsExpand = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">true</span> };
veggieGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"celery"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">true</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"try ants on a log"</span> });
veggieGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"tomato"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">false</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"pairs well with basil"</span> });
veggieGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"zucchini"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">true</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"zucchini bread > bannana bread"</span> });
veggieGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"peas"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">true</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"like peas in a pod"</span> });
fruitGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"banana"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">false</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"available in chip form factor"</span> });
fruitGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"strawberry"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">false</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"spring plant"</span> });
fruitGroup.Add(<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">new</span> VeggieModel() { Name = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"cherry"</span>, IsReallyAVeggie = <span class="hljs-literal" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">false</span>, Comment = <span class="hljs-string" style="border: 0px; box-sizing: inherit; color: var(--highlight-variable); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">"topper for icecream"</span> });
grouped.Add(veggieGroup);
grouped.Add(fruitGroup);
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">return</span> grouped;
}
<span class="hljs-function" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Click</span>(<span class="hljs-params" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">GroupedVeggieModel model</span>)</span>
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">if</span> (model.IsExpand)
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">var</span> index = grouped.IndexOf(model);
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">var</span> context = groupedCopy[index];
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">foreach</span> (<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">var</span> m <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">in</span> context)
{
model.Add(m);
}
}
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">else</span>
{
model.Clear();
}
}
<span class="hljs-function" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">private</span> <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">void</span> <span class="hljs-title" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">TapGestureRecognizer_Tapped</span>(<span class="hljs-params" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="hljs-built_in" style="border: 0px; box-sizing: inherit; color: var(--highlight-literal); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">object</span> sender, EventArgs e</span>)</span>
{
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">var</span> label = sender <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">as</span> Label;
<span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">var</span> model = label.BindingContext <span class="hljs-keyword" style="border: 0px; box-sizing: inherit; color: var(--highlight-keyword); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">as</span> GroupedVeggieModel;
model.IsExpand = !model.IsExpand;
Click(model);
}
}
</code></pre><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><a href="https://i.stack.imgur.com/7fY6w.gif" rel="nofollow noreferrer" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; user-select: auto; vertical-align: baseline;"><img alt="enter image description here" src="https://i.stack.imgur.com/7fY6w.gif" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; max-width: 100%; padding: 0px; vertical-align: bottom;" /></a></p><p style="--_pr-img-mb: 0; background-color: white; border: 0px; box-sizing: inherit; clear: both; color: #232629; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 15px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><br /></p><div class="flex--item mr16" style="background-color: white; border: 0px; box-sizing: inherit; color: #232629; flex: 1 1 100px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin-left: 0px; margin-right: 0px; padding: 0px; vertical-align: baseline;"><div class="js-post-menu pt2" data-post-id="61523852" data-post-type-id="2" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: var(--su2) !important; vertical-align: baseline;"><div class="d-flex gs8 s-anchors s-anchors__muted fw-wrap" style="--_an-a-fc-hover: var(--black-400); --_an-a-fc: var(--black-500); border: 0px; box-sizing: inherit; display: flex !important; flex-wrap: wrap !important; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: calc(var(--su8) / 2 * -1); padding: 0px; vertical-align: baseline;"><div class="flex--item" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: calc(var(--su8) / 2); padding: 0px; vertical-align: baseline;"><a aria-controls="se-share-sheet-1" aria-expanded="false" class="js-share-link js-gps-track" data-action=" s-popover#toggle se-share-sheet#preventNavigation s-popover:show->se-share-sheet#willShow s-popover:shown->se-share-sheet#didShow" data-controller="se-share-sheet s-popover" data-gps-track="post.click({ item: 2, priv: 0, post_type: 2 })" data-s-popover-placement="bottom-start" data-se-share-sheet-license-name="CC BY-SA 4.0" data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f4.0%2f" data-se-share-sheet-location="2" data-se-share-sheet-post-type="answer" data-se-share-sheet-social="facebook twitter devto" data-se-share-sheet-subtitle="" data-se-share-sheet-title="Share a link to this answer" href="https://stackoverflow.com/a/61523852" itemprop="url" rel="nofollow" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration-line: none; user-select: auto; vertical-align: baseline;" title="Short permalink to this answer">Share</a></div><div class="flex--item" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: calc(var(--su8) / 2); padding: 0px; vertical-align: baseline;"><a class="js-suggest-edit-post js-gps-track" data-gps-track="post.click({ item: 6, priv: 0, post_type: 2 })" href="https://stackoverflow.com/posts/61523852/edit" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration-line: none; user-select: auto; vertical-align: baseline;" title="">Improve this answer</a></div><div class="flex--item" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: calc(var(--su8) / 2); padding: 0px; vertical-align: baseline;"><button aria-controls="" aria-describedby="--stacks-s-tooltip-idhqmiyl" class="s-btn s-btn__link js-follow-post js-follow-answer js-gps-track" data-controller="s-tooltip " data-gps-track="post.click({ item: 14, priv: 0, post_type: 2 })" data-s-popover-placement="bottom" data-s-tooltip-placement="bottom" id="btnFollowPost-61523852" style="--_bu-badge-o: .5; --_bu-baw: 0; --_bu-bc-selected: transparent; --_bu-bc: transparent; --_bu-bg-active: var(--theme-button-active-background-color); --_bu-bg-hover: var(--theme-button-hover-background-color); --_bu-bg-selected: var(--theme-button-selected-background-color); --_bu-bg: none; --_bu-br: 0; --_bu-bs: none; --_bu-dropdown-bw: var(--su-static4); --_bu-fc-active: var(--theme-button-hover-color); --_bu-fc-hover: var(--theme-button-hover-color); --_bu-fc-selected: var(--theme-button-selected-color); --_bu-fc: var(--theme-button-color); --_bu-filled-bc-active: var(--theme-button-filled-active-border-color); --_bu-filled-bc-selected: var(--theme-button-filled-selected-border-color); --_bu-filled-bc: var(--theme-button-filled-border-color); --_bu-filled-bg-active: var(--theme-button-filled-active-background-color); --_bu-filled-bg-hover: var(--theme-button-filled-hover-background-color); --_bu-filled-bg-selected: var(--theme-button-filled-selected-background-color); --_bu-filled-bg: var(--theme-button-filled-background-color); --_bu-filled-bs: var(--_bu-bs); --_bu-filled-fc-active: var(--theme-button-filled-hover-color); --_bu-filled-fc-hover: var(--theme-button-filled-hover-color); --_bu-filled-fc-selected: var(--theme-button-filled-selected-color); --_bu-filled-fc: var(--theme-button-filled-color); --_bu-focus-ring: none; --_bu-fs: var(--fs-body1); --_bu-number-fc-selected: var(--_bu-number-fc); --_bu-number-fc: var(--white); --_bu-outlined-bc-selected: var(--theme-button-outlined-selected-border-color); --_bu-outlined-bc: var(--theme-button-outlined-border-color); --_bu-outlined-bg-selected: var(--theme-button-selected-background-color); --_bu-outlined-bg: var(--theme-button-outlined-background-color); --_bu-outlined-fc-selected: var(--theme-button-selected-color); --_bu-p: 0; --_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); appearance: none; background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border-color: initial; border-radius: var(--_bu-br); border-style: initial; border-width: 0px; box-shadow: var(--_bu-bs); box-sizing: inherit; cursor: pointer; display: inline; font: inherit; margin: 0px; outline: revert; padding: 0px; position: relative; text-align: inherit; user-select: auto;" type="button">Follow</button></div></div><div class="js-menu-popup-container" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"></div></div></div><div class="post-signature flex--item fl0" style="background-color: white; border: 0px; box-sizing: inherit; color: #232629; flex: 0 1 auto !important; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin-left: 0px; margin-right: 0px; padding: 0px; vertical-align: top; width: 200px;"><div class="user-info " style="border: 0px; box-sizing: border-box; color: var(--black-500); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 5px 6px 7px 7px; vertical-align: baseline;"><div class="user-action-time" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 1px 0px 4px; padding: 0px; vertical-align: baseline;"><a class="js-gps-track" data-gps-track="post.click({ item: 4, priv: 0, post_type: 2 })" href="https://stackoverflow.com/posts/61523852/revisions" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 12px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration-line: none; user-select: auto; vertical-align: baseline;" title="show all edits to this post">edited <span class="relativetime" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;" title="2021-08-16 16:12:29Z">Aug 16, 2021 at 16:12</span></a></div><div class="user-gravatar32" style="border-radius: 1px; border: 0px; box-sizing: inherit; float: left; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 32px; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; width: 32px;"><a href="https://stackoverflow.com/users/8304176/junaid-pathan" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration-line: none; user-select: auto; vertical-align: baseline;"><div class="gravatar-wrapper-32" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 32px; line-height: inherit; margin: 0px; overflow: hidden; padding: 0px; vertical-align: baseline; width: 32px;"><img alt="Junaid Pathan's user avatar" class="bar-sm" height="32" src="https://www.gravatar.com/avatar/36d42aa4939164f70c86d91aed54ad63?s=64&d=identicon&r=PG&f=y&so-version=2" style="border-radius: 1px; border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 32px; line-height: inherit; margin: 0px auto; padding: 0px; vertical-align: baseline; width: 32px;" width="32" /></div></a></div><div class="user-details" style="border: 0px; box-sizing: inherit; float: left; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: 17px; margin: 0px 0px 0px 8px; overflow-wrap: break-word; padding: 0px; vertical-align: baseline; width: calc(100% - 40px);"><a href="https://stackoverflow.com/users/8304176/junaid-pathan" style="--_li-fc-hover: var(--theme-link-color-hover); --_li-fc-visited: var(--theme-link-color-visited); --_li-fc: var(--theme-link-color); border: 0px; box-sizing: inherit; cursor: pointer; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; text-decoration-line: none; user-select: auto; vertical-align: baseline;">Junaid Pathan</a><div class="-flair" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span class="reputation-score" dir="ltr" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: bold; line-height: inherit; margin: 0px 2px 0px 0px; padding: 0px; vertical-align: baseline;" title="reputation score ">3,802</span><span aria-hidden="true" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px 0px 2px; padding: 0px; vertical-align: baseline;" title="1 gold badge"><span class="badge1" style="background-image: url("../../Img/unified/sprites.svg?v=fcc0ea44ba27"), none; background-position: -102px -398px; background-repeat: no-repeat; background-size: initial; border: 0px; box-sizing: inherit; display: inline-block; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 14px; line-height: inherit; margin: 0px 3px 0px 2px; overflow: hidden; padding: 0px; vertical-align: text-bottom; width: 6px;"></span><span class="badgecount" style="border: 0px; box-sizing: inherit; color: var(--black-400); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">1</span></span><span class="v-visible-sr" style="border: 0px; box-sizing: inherit; clip-path: inset(50%); clip: rect(1px, 1px, 1px, 1px); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 1px; line-height: inherit; margin: -1px 3px -1px 2px; overflow-wrap: normal; overflow: hidden; padding: 0px; position: absolute; vertical-align: baseline; width: 1px;">1 gold badge</span><span aria-hidden="true" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px 0px 2px; padding: 0px; vertical-align: baseline;" title="23 silver badges"><span class="badge2" style="background-image: url("../../Img/unified/sprites.svg?v=fcc0ea44ba27"), none; background-position: -82px -398px; background-repeat: no-repeat; background-size: initial; border: 0px; box-sizing: inherit; display: inline-block; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 14px; line-height: inherit; margin: 0px 3px 0px 2px; overflow: hidden; padding: 0px; vertical-align: text-bottom; width: 6px;"></span><span class="badgecount" style="border: 0px; box-sizing: inherit; color: var(--black-400); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">23</span></span><span class="v-visible-sr" style="border: 0px; box-sizing: inherit; clip-path: inset(50%); clip: rect(1px, 1px, 1px, 1px); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 1px; line-height: inherit; margin: -1px 3px -1px 2px; overflow-wrap: normal; overflow: hidden; padding: 0px; position: absolute; vertical-align: baseline; width: 1px;">23 silver badges</span><span aria-hidden="true" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px 3px 0px 2px; padding: 0px; vertical-align: baseline;" title="46 bronze badges"><span class="badge3" style="background-image: url("../../Img/unified/sprites.svg?v=fcc0ea44ba27"), none; background-position: -62px -398px; background-repeat: no-repeat; background-size: initial; border: 0px; box-sizing: inherit; display: inline-block; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 14px; line-height: inherit; margin: 0px 3px 0px 2px; overflow: hidden; padding: 0px; vertical-align: text-bottom; width: 6px;"></span><span class="badgecount" style="border: 0px; box-sizing: inherit; color: var(--black-400); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">46</span></span><span class="v-visible-sr" style="border: 0px; box-sizing: inherit; clip-path: inset(50%); clip: rect(1px, 1px, 1px, 1px); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; height: 1px; line-height: inherit; margin: -1px 3px -1px 2px; overflow-wrap: normal; overflow: hidden; padding: 0px; position: absolute; vertical-align: baseline; width: 1px;">46 bronze badges</span></div></div></div></div><div class="post-signature flex--item fl0" style="background-color: white; border: 0px; box-sizing: inherit; color: #232629; flex: 0 1 auto !important; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI Adjusted", "Segoe UI", "Liberation Sans", sans-serif; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 13px; font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: inherit; margin-left: 0px; margin-right: 0px; padding: 0px; vertical-align: top; width: 200px;"><div class="user-info " style="border: 0px; box-sizing: border-box; color: var(--black-500); font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 5px 6px 7px 7px; vertical-align: baseline;"><div class="user-action-time" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-caption); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 1px 0px 4px; padding: 0px; vertical-align: baseline;">answered <span class="relativetime" style="border: 0px; box-sizing: inherit; font-family: inherit; font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: 12px; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;" title="2020-04-30 12:52:51Z">Apr 30, 2020 at 12:52</span></div></div></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-30527786447748018132023-07-11T08:57:00.001-07:002023-07-11T08:57:11.697-07:00Swipeable ListView in Xamarin Forms<h2 style="box-sizing: border-box; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-size: 40px; letter-spacing: 1.44px;"><span style="color: #18283b; font-family: Helvetica Neue, Arial, Helvetica, sans-serif;">https://www.mobmaxime.com/blog/swipeable-listview-in-xamarin-forms/</span></span></h2><h2 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 40px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">Setting up a Blank Solution</span></h2><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">We will start by creating a Blank Forms application. We will use the Blank Forms App (Multiplatform) provided by Xamarin.</p><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;"><img alt="Set Your Appointments with Calendar" class="alignnone size-full wp-image-5493 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="464" loading="eager" sizes="(max-width: 640px) 100vw, 640px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/02/Set-Your-Appointments-with-Calendar.png?resize=640%2C464&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/02/Set-Your-Appointments-with-Calendar.png?w=908&ssl=1 908w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/02/Set-Your-Appointments-with-Calendar.png?resize=300%2C218&ssl=1 300w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/02/Set-Your-Appointments-with-Calendar.png?resize=768%2C557&ssl=1 768w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="640" /></p><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;"><img alt="new-project-file" class="alignnone size-full wp-image-5667 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="454" loading="eager" sizes="(max-width: 640px) 100vw, 640px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/new-project-file.png?resize=640%2C454&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/new-project-file.png?w=897&ssl=1 897w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/new-project-file.png?resize=300%2C213&ssl=1 300w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/new-project-file.png?resize=768%2C545&ssl=1 768w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="640" /></p><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">Data Class</span></h3><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">Here is a simple data class that will hold some details about a song.</p><pre style="box-sizing: border-box; color: #212529; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 14px; letter-spacing: 1.44px; margin-bottom: 1rem; margin-top: 0px; overflow: auto;">public class Item
{
public string SongName { get; set; }
public string AlbumThumbnail { get; set; }
public string SingerName { get; set; }
}</pre><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">The BaseViewModel class is the extended class of INotifyPropertyChanged, to update the property & view.</p><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">BaseViewmodel</span></h3><pre style="box-sizing: border-box; color: #212529; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 14px; letter-spacing: 1.44px; margin-bottom: 1rem; margin-top: 0px; overflow: auto;">using System.ComponentModel;
using System.Runtime.CompilerServices;
namespace <span style="box-sizing: border-box; font-weight: 700;">SwipListViewDemo</span>
{
public class <span style="box-sizing: border-box; font-weight: 700;">BaseViewModel</span> : <span style="box-sizing: border-box; font-weight: 700;">INotifyPropertyChanged</span>
{
public event PropertyChangedEventHandler PropertyChanged;
protected void <span style="box-sizing: border-box; font-weight: 700;">OnPropertyChanged</span>([CallerMemberName] string propertyName = "")
{
var changed = PropertyChanged;
if (changed == null)
return;
changed.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
}
}</pre><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">MainViewModel</span></h3><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">We add some dummy playlist data in list-view.</p><pre style="box-sizing: border-box; color: #212529; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 14px; letter-spacing: 1.44px; margin-bottom: 1rem; margin-top: 0px; overflow: auto;">using System.Collections.ObjectModel;
namespace <span style="box-sizing: border-box; font-weight: 700;">SwipListViewDemo</span>
{
public class <span style="box-sizing: border-box; font-weight: 700;">MainViewModel</span> : <span style="box-sizing: border-box; font-weight: 700;">BaseViewModel</span>
{
ObservableCollection<Item> _listData;
public <span style="box-sizing: border-box; font-weight: 700;">MainViewModel</span>()
{
BindData();
}
public ObservableCollection<Item> ListData {
get {
return _listData;
}
set {
_listData = value;
OnPropertyChanged();
}
}
private void <span style="box-sizing: border-box; font-weight: 700;">BindData</span>()
{
ListData = new ObservableCollection<Item>();
ListData.Add(new Item() { SongName = "Shape Of You", SingerName = "ED Sheeran", AlbumThumbnail = "https://miro.medium.com/max/2560/1*bqNsZ6GB2aMsZE20m8tcJw.jpeg" });
ListData.Add(new Item() { SongName = "Despacito", SingerName = "Luis Fonsi feat. Daddy Yankee", AlbumThumbnail = "https://i.ytimg.com/vi/x724C_mntSE/maxresdefault.jpg" });
ListData.Add(new Item() { SongName = "Bom Bidi Bom", SingerName = "Nicki Minaj", AlbumThumbnail = "https://m.media-amazon.com/images/I/810LbeBAA5L._SS500_.jpg" });
ListData.Add(new Item() { SongName = "Witness", SingerName = "Katy Perry", AlbumThumbnail = "https://www.aljazeera.com/mritems/Images/2014/10/26/04cca55fea2247b2a15d32ca7227291c_18.jpg" });
ListData.Add(new Item() { SongName = "Tsunami", SingerName = "Katy Perry", AlbumThumbnail = "https://i.ytimg.com/vi/nZ-X-dhQrvQ/maxresdefault.jpg" });
ListData.Add(new Item() { SongName = "Swish Swish", SingerName = "Katy Perry Ft Nicki Minaj", AlbumThumbnail = "https://a10.gaanacdn.com/images/song/75/21459675/crop_480x480_1534501869.jpg" });
ListData.Add(new Item() { SongName = "Greedy", SingerName = "Ariana Grande", AlbumThumbnail = "https://i.pinimg.com/originals/4f/90/91/4f90916647b1819cc3e99928086af00c.jpg" });
ListData.Add(new Item() { SongName = "I Got You", SingerName = "Bebe Rexha", AlbumThumbnail = "https://i.ytimg.com/vi/VpUgwi-9b1I/maxresdefault.jpg" });
ListData.Add(new Item() { SongName = "Wake Me Up", SingerName = "Avicii", AlbumThumbnail = "https://upload.wikimedia.org/wikipedia/en/d/da/Avicii_Wake_Me_Up_Official_Single_Cover.png" });
ListData.Add(new Item() { SongName = "BeFoUr", SingerName = "Zayn Malik", AlbumThumbnail = "https://assets.teenvogue.com/photos/56ea9853d06bfe7770d2bf32/16:9/w_1280,c_limit/12797882_1298441130172810_1723182945_n.jpg" });
ListData.Add(new Item() { SongName = "Mercy", SingerName = "Shawn Mendes", AlbumThumbnail = "https://a10.gaanacdn.com/images/song/75/21459675/crop_480x480_1534501869.jpg" });
}
}
}</pre><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">Layout</span></h3><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">We will use a ListView and SwipeView is wrapped in a DataTemplate, so it can be easily reused within the ListView.</p><pre style="box-sizing: border-box; color: #212529; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 14px; letter-spacing: 1.44px; margin-bottom: 1rem; margin-top: 0px; overflow: auto;"><?xml version="1.0" encoding="utf-8"?>
<ContentPage
xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:d="http://xamarin.com/schemas/2014/forms/design"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
xmlns:ffimageloading="clr-namespace:FFImageLoading.Forms;assembly=FFImageLoading.Forms"
x:Class="SwipListViewDemo.MainPage">
<ListView
x:Name="listView"
HasUnevenRows="True"
SeparatorVisibility="None"
ItemsSource="{Binding ListData}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout
Spacing="0">
<SwipeView>
<SwipeView.LeftItems>
<SwipeItems>
<SwipeItem
IconImageSource="ic_heart.png"
BackgroundColor="LightSeaGreen"
Invoked="SwipeItem_Favorite" />
</SwipeItems>
</SwipeView.LeftItems>
<SwipeView.RightItems>
<SwipeItems>
<SwipeItem
IconImageSource="ic_bin.png"
BackgroundColor="IndianRed"
Invoked="SwipeItem_Delete" />
</SwipeItems>
</SwipeView.RightItems>
<!-- Content -->
<StackLayout
Spacing="10"
Orientation="Horizontal"
Padding="20,10">
<ffimageloading:CachedImage
Source="{Binding AlbumThumbnail}"
DownsampleWidth="60"
DownsampleHeight="60"
HeightRequest="60"
WidthRequest="60"
LoadingPlaceholder="ic_placeholder"
ErrorPlaceholder="ic_placeholder"
DownsampleToViewSize="true" />
<StackLayout
VerticalOptions="CenterAndExpand"
Spacing="5">
<Label
Text="{Binding SongName}"
FontSize="18"
TextColor="Black"/>
<Label
Text="{Binding SingerName}"
FontSize="13"
TextColor="Gray"/>
</StackLayout>
</StackLayout>
</SwipeView>
<BoxView
HeightRequest="1"
VerticalOptions="EndAndExpand"
BackgroundColor="Gray" />
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentPage></pre><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">In the code behind our MainPage, we will handle the Delete and Favorite Item Action.</p><pre style="box-sizing: border-box; color: #212529; font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; font-size: 14px; letter-spacing: 1.44px; margin-bottom: 1rem; margin-top: 0px; overflow: auto;">using Xamarin.Forms;
namespace <span style="box-sizing: border-box; font-weight: 700;">SwipListViewDemo</span>
{
public partial class <span style="box-sizing: border-box; font-weight: 700;">MainPage</span> : <span style="box-sizing: border-box; font-weight: 700;">ContentPage</span>
{
public <span style="box-sizing: border-box; font-weight: 700;">MainPage</span>()
{
InitializeComponent();
Title = "Playlist";
BindingContext = new MainViewModel();
}
void <span style="box-sizing: border-box; font-weight: 700;">SwipeItem_Delete</span>(System.Object sender, System.EventArgs e)
{
var selectedItem = (sender as SwipeItem).BindingContext as Item;
DisplayAlert("", selectedItem.SongName + " Deleted From PlayList", "ok");
}
void <span style="box-sizing: border-box; font-weight: 700;">SwipeItem_Favorite</span>(System.Object sender, System.EventArgs e)
{
var selectedItem = (sender as SwipeItem).BindingContext as Item;
DisplayAlert("", selectedItem.SongName + " Added In Favorite List", "ok");
}
}
}</pre><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">That’s it! Now the ListView is not just styled, but it allows for right and left item swipe behavior with action.</p><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">Here is what the final result should like on Android and iOS :</p><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">Android:</span></h3><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;"><img alt="Swipeable ListView" class="alignnone wp-image-5664 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="787" loading="eager" sizes="(max-width: 363px) 100vw, 363px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?resize=363%2C787&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?w=923&ssl=1 923w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?resize=139%2C300&ssl=1 139w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?resize=473%2C1024&ssl=1 473w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?resize=768%2C1663&ssl=1 768w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image3.jpg?resize=709%2C1536&ssl=1 709w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="363" /> <img alt="Swipeable ListView" class="alignnone wp-image-5663 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="786" loading="eager" sizes="(max-width: 363px) 100vw, 363px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?resize=363%2C786&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?w=923&ssl=1 923w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?resize=139%2C300&ssl=1 139w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?resize=473%2C1024&ssl=1 473w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?resize=768%2C1663&ssl=1 768w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image6.jpg?resize=709%2C1536&ssl=1 709w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="363" /></p><h3 style="box-sizing: border-box; color: #18283b; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 32px; font-weight: 500; letter-spacing: 1.44px; line-height: 1.3; margin: 0px 0px 10px;"><span style="box-sizing: border-box; font-weight: 700;">iOS:</span></h3><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;"><img alt="Swipeable ListView" class="alignnone wp-image-5666 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="783" loading="eager" sizes="(max-width: 362px) 100vw, 362px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?resize=362%2C783&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?w=828&ssl=1 828w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?resize=139%2C300&ssl=1 139w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?resize=473%2C1024&ssl=1 473w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?resize=768%2C1662&ssl=1 768w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image5.png?resize=710%2C1536&ssl=1 710w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="362" /> <img alt="Swipeable ListView" class="alignnone wp-image-5665 jetpack-lazy-image jetpack-lazy-image--handled" data-lazy-loaded="1" data-recalc-dims="1" decoding="async" height="783" loading="eager" sizes="(max-width: 362px) 100vw, 362px" src="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?resize=362%2C783&ssl=1" srcset="https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?w=828&ssl=1 828w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?resize=139%2C300&ssl=1 139w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?resize=473%2C1024&ssl=1 473w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?resize=768%2C1662&ssl=1 768w, https://i0.wp.com/www.mobmaxime.com/wp-content/uploads/2021/05/image1.png?resize=710%2C1536&ssl=1 710w" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: top;" width="362" /></p><p style="box-sizing: border-box; color: #6b7a8c; font-family: "Helvetica Neue", Arial, Helvetica, sans-serif; font-size: 16px; letter-spacing: 1.44px; line-height: 1.6; margin: 0px 0px 15px;">You can find the whole source-code in my <a href="https://drive.google.com/file/d/1Gn0ZIXv497w4aKKlNam0z_dULPPjEjws/view?usp=sharing" style="box-sizing: border-box; color: #e83d4b; text-decoration-line: none; transition: all 0.35s ease 0s;">Download</a>.</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-59361060775981000072023-06-29T15:28:00.004-07:002023-06-29T15:28:31.192-07:00sql last last_execution_time <p> SELECT execquery.last_execution_time AS [Date Time], execsql.text AS [Script] FROM sys.dm_exec_query_stats AS execquery</p><p>CROSS APPLY sys.dm_exec_sql_text(execquery.sql_handle) AS execsql</p><p>ORDER BY execquery.last_execution_time DESC</p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-49153125624799783122023-06-22T11:59:00.004-07:002023-06-22T11:59:48.406-07:00Notepad++ cached files location<p> https://stackoverflow.com/questions/29617349/notepad-cached-files-location</p><p><br /></p><pre style="border-radius: var(--br-md); border: 0px; box-sizing: inherit; color: var(--highlight-color); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--fs-body1); font-stretch: inherit; font-variant-alternates: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; font-variation-settings: inherit; line-height: var(--lh-md); margin-bottom: calc(1.5em); margin-top: 0px; max-height: 600px; overflow-wrap: normal; overflow: auto; padding: var(--su12); vertical-align: baseline; width: auto;"><code style="border-radius: 0px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;">C:\Users\USER\AppData\Roaming\Notepad++\backup
</code></pre><div><code style="border-radius: 0px; border: 0px; box-sizing: inherit; color: var(--black-800); font-family: var(--ff-mono); font-feature-settings: inherit; font-kerning: inherit; font-optical-sizing: inherit; font-size: var(--_pr-code-fs); font-stretch: inherit; font-style: inherit; font-variant: inherit; font-variation-settings: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline; white-space: inherit;"><br /></code></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-19176671174880093282023-06-01T08:23:00.002-07:002023-06-01T08:23:09.369-07:00semana del la semana sql server<p> SELECT DATEPART(WEEK, <span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-size: 14px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">@</span><span class="pln" style="border: 0px; font-family: inherit; font-size: 14px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">FechaInicio</span>) -</p><p> DATEPART(WEEK, DATEADD(MM, DATEDIFF(MM,0,<span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-size: 14px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">@</span><span class="pln" style="border: 0px; font-family: inherit; font-size: 14px; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">FechaInicio</span> ), 0))+ 1 AS SemanaMes</p><p><br /></p><pre class="prettyprint lang-sql prettyprinted" style="background-color: white; border: 1px solid rgb(136, 136, 136); color: #333333; direction: ltr; font-family: inherit; font-size: 14px; list-style-type: none; margin-bottom: 0px; margin-top: 0px; min-height: 70px; outline: 0px; overflow-wrap: normal; overflow: auto visible; padding: 2px;"><span class="kwd" style="border: 0px; color: #000088; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">SELECT</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;"> DATEPART</span><span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">(</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">ISO_WEEK</span><span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">,</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;"> </span><span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">@</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">FechaInicio</span><span class="pun" style="border: 0px; color: #666600; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">)</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;"> </span><span class="kwd" style="border: 0px; color: #000088; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;">as</span><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;"> NumSemana</span></pre><div><span class="pln" style="border: 0px; color: black; font-family: inherit; font-style: inherit; font-weight: inherit; margin: 0px; outline: 0px; padding: 0px;"><br /></span></div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-53807027015682989442023-05-25T10:35:00.005-07:002023-05-25T10:35:53.833-07:00Using FOR XML PATH<p> https://www.sqlmatters.com/Articles/Converting%20row%20values%20in%20a%20table%20to%20a%20single%20concatenated%20string.aspx</p><h2 style="background-color: #e0e0e0; color: #212121; font-family: Arial, Helvetica, sans-serif; font-size: 1em; line-height: 20.992px; margin-bottom: 10px; margin-left: 0px; margin-top: 30px;">Solution 5 : Using FOR XML PATH</h2><span style="background-color: #e0e0e0; color: #212121; font-family: Arial, Helvetica, sans-serif; font-size: 13.12px;">Some of the XML statements introduced in SQL Server 2005 had to implement a means of looping around data in order to produce XML. This solution takes advantage of this, but strips out the XML specific parts to produce the comma separated list.</span><div class="code" style="background-color: #ffffe1; border-collapse: separate; border-color: rgb(170, 170, 170); border-spacing: 5px; border-style: solid; border-width: 1px; color: #212121; font-family: "Courier New", Courier, monospace; font-size: 13.12px; line-height: normal; margin-bottom: 25px; margin-left: 10px; margin-top: 15px; overflow: hidden; padding: 4px; width: 500px;"><span style="color: blue;">SELECT</span> <span style="color: magenta;">STUFF</span><span style="color: grey;">((</span><span style="color: blue;">SELECT</span> <span style="color: red;">','</span> <span style="color: grey;">+</span> Txt<br /> <span style="color: blue;">FROM</span> ConcatenationDemo<br /> <span style="color: blue;">FOR</span> <span style="color: blue;">XML</span> <span style="color: blue;">PATH</span><span style="color: grey;">(</span><span style="color: red;">''</span><span style="color: grey;">))</span> <span style="color: grey;">,</span>1<span style="color: grey;">,</span>1<span style="color: grey;">,</span><span style="color: red;">''</span><span style="color: grey;">)</span> <span style="color: blue;">AS</span> Txt</div>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-9210973791900023622023-05-23T08:00:00.002-07:002023-05-23T08:00:19.133-07:00sql server separar cadenas<p>CREATE FUNCTION [dbo].[SepararCadena](@cadena NVARCHAR(MAX), </p><p> @delimitador CHAR(1)) </p><p>RETURNS @output TABLE(splitData NVARCHAR(MAX)) </p><p>AS </p><p> BEGIN </p><p> DECLARE @start INT </p><p> DECLARE @end INT </p><p> SELECT @start = 1, </p><p> @end = CHARINDEX(@delimitador, @cadena) </p><p> WHILE @start < LEN(@cadena) + 1 </p><p> BEGIN </p><p> IF @end = 0 </p><p> SET @end = LEN(@cadena) + 1 </p><p> INSERT INTO @output(splitData) </p><p> VALUES(SUBSTRING(@cadena, @start, @end-@start)) </p><p> SET @start = @end + 1 </p><p> SET @end = CHARINDEX(@delimitador, @cadena, @start) </p><p> END </p><p> RETURN </p><p> END </p>Unknownnoreply@blogger.com0tag:blogger.com,1999:blog-8295278319843868530.post-90404624374312470872023-04-18T15:33:00.001-07:002023-04-18T15:33:46.594-07:00https://ibotpeaches.github.io/Apktool/<p> https://ibotpeaches.github.io/Apktool/</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5oERdH-AgDCzlhU-SYq_CpvRW-N7YJbdBBUqGsgXdoU0KAALHBbEj4nv2P6MOp4YeMwRnIDeoE_cMMjDI-QQGPQfFthjfbRszCfBRtY5gI5Rvm_NyYhXnO6MDCYWBMO-59r1-xRrYlVTbcxPYnOX0wefxO7ugOw4hyROaXePkAiDNSpK7RVjtYOGE/s1177/20230418_Captura_5.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="573" data-original-width="1177" height="156" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj5oERdH-AgDCzlhU-SYq_CpvRW-N7YJbdBBUqGsgXdoU0KAALHBbEj4nv2P6MOp4YeMwRnIDeoE_cMMjDI-QQGPQfFthjfbRszCfBRtY5gI5Rvm_NyYhXnO6MDCYWBMO-59r1-xRrYlVTbcxPYnOX0wefxO7ugOw4hyROaXePkAiDNSpK7RVjtYOGE/s320/20230418_Captura_5.PNG" width="320" /></a></div><br /><p><br /></p>Unknownnoreply@blogger.com0